`
javayestome
  • 浏览: 1050912 次
  • 性别: Icon_minigender_2
  • 来自: 北京
文章分类
社区版块
存档分类
最新评论

counting sort(stable)

阅读更多
#include<stdio.h>
#include<malloc.h>

void counting_sort(int a[], int sorted[],int k,int size)
{
int *c=(int *)malloc((k+1)*sizeof(int));
int i=0;
for(;i<k+1;i++)
c[i]=0;
for(i=0;i<size;i++)
c[a[i]]=c[a[i]]+1;
//now,c[i] contains the numbers of elements equals to i
for(i=1;i<k+1;i++)
c[i]=c[i]+c[i-1];
//now ,c[i] contains the numbers of elements equals or less than i
for(i=size-1;i>-1;i--)
{
sorted[c[a[i]]-1]=a[i];
c[a[i]]=c[a[i]]-1;
}
free(c);
}

int main()
{
int a[10]={9,5,2,6,7,1,0,3,8,4};
int b[10]={-1};
counting_sort(a,b,9,10);
int i=0;
for(;i<10;i++)
printf("%d ",b[i]);
printf("\n");
return 0;
}
分享到:
评论

相关推荐

    AlgorithmMan by Iori(Counting Sort)

    CountingSort为AlgorithmMan中的计数排序演示工具(这是可执行文件;需要.net 4.0支持;非源代码)。 原文:C#算法设计排序篇之08-计数排序(附带动画演示程序) 链接:...

    排序算法-基于C语言实现的排序算法之CountingSort实现.zip

    **C语言实现CountingSort:** C语言的简洁和高效使得它成为实现算法的理想选择。以下是一个简单的Counting Sort C语言实现的框架: ```c #include void countingSort(int arr[], int n) { // 步骤1和2:初始化...

    排序算法之CountingSort

    python 排序算法之CountingSort

    基数排序_Countingsort.zip

    基数排序_Countingsort

    计数排序JAVA实现counting sort algorithm

    public static int[] countingSort(int[] arr) { // Step 1: 获取数组最大值 int max = Arrays.stream(arr).max().getAsInt(); // Step 2: 初始化计数数组 int[] countArray = new int[max + 1]; // Step ...

    CountingSort:计数排序算法的实现

    var countingSort = require ( './countingSort.js' ) ; // Construct input [0, 5], therefore an array of size 6 is needed // for the temporary storage space. var input = [ 2 , 5 , 3 , 0 , 2 , 3 , 0 , 3 ...

    source统计工具Counting

    这就是为什么“Source统计工具Counting”能够成为开发者和项目管理者手中利器的原因。 Source统计工具Counting是一款专门设计用于分析编程源代码的实用工具。它具备多种功能,其中最核心的能力在于统计源代码中不同...

    unbox_yolov5_deepsort_counting:yolov5 deepsort 行人 车辆 跟踪 检测 计数

    yolov5 deepsort 行人 车辆 ...$ git clone https://github.com/dyh/unbox_yolov5_deepsort_counting.git 因此repo包含weights及mp4等文件,若 git clone 速度慢,可直接下载zip文件: 进入目录 $ cd unbox_yolov5_dee

    YOLOv8-deepsort 实现智能车辆目标检测+车辆跟踪+车辆计数已测

    本资源提供了基于YOLOv8-deepsort算法的智能车辆目标检测、车辆跟踪和车辆计数的实现方案。首先,利用YOLOv8算法对视频中的车辆目标进行检测,并对检测到的目标进行标记。然后,通过deepsort算法对标记的车辆目标...

    3D people counting implementation guide

    《3D人员计数实施指南》是针对使用毫米波雷达技术进行三维人体计数的软件实现文档,由德州仪器(Texas Instruments)发布。本指南详细介绍了如何设置演示系统,以及利用SDK组件进行3D人员计数的具体步骤。...

    radix sort

    在这个例子中,`countingSort`函数实现了计数排序,`radixsort`函数负责调用`countingSort`并处理从低位到高位的每一位。这段代码适用于整数数组的排序,如果需要处理浮点数或者负数,还需要进行适当的修改。 总结...

    53958727box-counting.zip

    在IT领域,分形盒维数(Box-Counting Dimension)是研究复杂几何形状和结构的一种重要工具,尤其在图像处理、数据建模和复杂网络分析中有着广泛的应用。本项目"53958727box-counting.zip"显然是针对1D、2D、3D空间中...

    Standard Practices for Cycle Counting in Fatigue Analysis E1049

    These practices are a compilation of acceptable proce- dures for cycle-counting methods employed in fatigue analysis. This standard does not intend to recommend a particular method.

    The Pleasures of Counting 1996

    The Pleasures of Counting 1996 © Cambridge University Press 1996

    Counting.exe

    《代码行统计工具Counting.exe详解》 在软件开发过程中,了解代码的规模是至关重要的。这不仅可以评估项目的复杂性,还可以为项目管理和资源分配提供参考。Counting.exe是一款高效实用的代码行统计工具,它支持多种...

    counting 代码行数统计

    标题中的“counting 代码行数统计”指的是在软件开发过程中对源代码文件中的代码行进行计数的活动。这通常用于评估项目的工作量、跟踪开发进度或比较不同版本的代码变化。代码行数统计可以帮助开发者理解代码的复杂...

    counting-sort-parallel-openmp:与openmp api并行化的计数排序算法

    计数排序并行openmp Esterepositórioabriga实施工具会按顺序对序数进行排序。 Esses algoritmos foram desenvolvidos no Programme da Disciplina deProgramaçãoParalela e Multicore do curso deCiê...

    1004. Counting Leaves (30)

    1004. Counting Leaves (30) 来自:http://blog.csdn.net/sunbaigui/article/details/8657008

    python 实现 排序 课程设计 代码

    计数排序(Counting Sort) 循环排序(Cycle Sort) 双重排序(Double Sort) 荷兰国旗排序(Dutch National Flag Sort) 交换排序(Exchange Sort) 外部排序(External Sort) 侏儒排序(Gnome Sort) 堆排序...

    yolov8系列--Real time people counting system in computer vis.zip

    在计算机视觉领域,实时人数计数系统是一种广泛应用的技术,它涉及到图像处理、深度学习和人工智能等多个方面的知识。本文将深入探讨YoloV8在构建实时人流量统计系统中的作用及其相关技术。 首先,Yolo(You Only ...

Global site tag (gtag.js) - Google Analytics