首页 > 其他分享 >计数排序

计数排序

时间:2022-11-12 10:57:14浏览次数:58  
标签:arr include int 票箱 计数 排序

概念

计数排序,有票箱,和票,将票对应票箱,

个人感觉类似哈希,将票对应到票箱,票箱有序

时间

\(O(n)\)

例子

洛谷1271

学校正在选举学生会成员,有 n(n\le 999)n(n≤999) 名候选人,每名候选人编号分别从 1 到 nn,现在收集到了 m(m<=2000000)m(m<=2000000) 张选票,每张选票都写了一个候选人编号。现在想把这些堆积如山的选票按照投票数字从小到大排序。

#include<iostream>
#include<cstring>
using namespace std;
int main(){
  int n,m;
  cin>>n>>m;
  int arr[n+1];
  memset(arr,0,sizeof(arr));
  for(int i = 0;i<m;i++){
    int temp;
    cin>>temp;
    arr[temp]++;  
  }
  for(int  i = 1;i<=n;i++){
    for(int j = 0;j<arr[i];j++){
        cout<<i<<" ";
    }
  }
}   

标签:arr,include,int,票箱,计数,排序
From: https://www.cnblogs.com/tsqo/p/16882875.html

相关文章

  • #10077. 「一本通 3.2 练习 3」最短路计数
    问1~n的最短路有几个 #include<iostream>#include<cstring>#include<queue>usingnamespacestd;constintN=1e6+2,M=2e6+2;constintinf=0x3f3f3f3f,m......
  • 冒泡排序(数组中的问题)
    问题:使用冒泡排序的方法,将数组中的元素按照升序的方式将其排列。冒泡排序核心思想:两两相邻元素进行比较,满足条件则交换;     ①先确认趟数;     ②写下一趟冒泡......
  • 希尔排序定性分析
    具体希尔排序和插入排序的过程网上有不少,这里就不多说了。下面只谈个人对希尔排序为什么能突破O(n^2)的理解。 希尔排序算法之所以比插入排序法好,是因为它的“大跨步”......
  • 快速排序
    快速排序 代码实现: ......
  • 十大经典排序算法(Java)--正在更新。。
    十大经典排序算法(2022年11月11日更新)1、冒泡排序冒泡排序是接下来的十大排序中最简单的排序。1.1方法描述简单来说,排序方法就是重复地走过要排序的数列,一次比较相邻......
  • 洛谷1923 排序
    洛谷1923错误这道题用的快排,但是非常卡时间,最后将快排优化,新学stl中nth_element(数组名,数组名+第k小元素,数组名+元素个数);将第k小元素找出,最后直接输出就行//判断k......
  • String类型List排序
    一、升序:@Testpublicvoidtest1(){//创建ArrayList集合对象List<String>al=newArrayList<>();//往集合里添加数据al.add("aa");al.add("bb");......
  • sql查询二级分类按照字符串排序
    1.函数解释len()是用来计算字符串长度left()是用来截取指定部分的字符串2.sql语句:select id,pid from tborderbycase    whenpid=0thenleft('00000',5-len(id)......
  • 34. 在排序数组中查找元素的第一个和最后一个位置
    34.在排序数组中查找元素的第一个和最后一个位置classSolution{publicint[]searchRange(int[]nums,inttarget){if(nums.length==0)returnnew......
  • ListView中排序和分组(GroupTemplate)的使用实例演示
    .aspx代码如下:<%@PageLanguage="C#"AutoEventWireup="true"CodeFile="8_Group_Sort.aspx.cs"Inherits="Group_Sort"%><!DOCTYPEhtmlPUBLIC"-//W3C//DTDXHTML1.0......