看编程珠玑第一章,如何对成员唯一的整数数组进行排序。
把书上的答案整理了出来.
怎样排序一个数组里的成员(int)
解决方法就是把这些数字按位存另一个数组中
例如
int arr[3] = { 2,5,7}
我们用一个char(8字节)来存储这个数组
76543210
-------------
10100100
为1的位表示有数组中的成员,如上图2、5、7位为1
这样存储之后 按位读出就排好序了。
sort.h
sort.c
本文介绍了一种使用位操作实现的排序算法,适用于成员唯一的整数数组。通过将数组中的每个整数映射到一个位向量,利用位操作高效地完成排序过程。文章提供了具体的实现代码,包括初始化位向量、设置和清除位、搜索位等关键步骤。
看编程珠玑第一章,如何对成员唯一的整数数组进行排序。
把书上的答案整理了出来.
怎样排序一个数组里的成员(int)
解决方法就是把这些数字按位存另一个数组中
例如
int arr[3] = { 2,5,7}
我们用一个char(8字节)来存储这个数组
76543210
-------------
10100100
为1的位表示有数组中的成员,如上图2、5、7位为1
这样存储之后 按位读出就排好序了。
sort.h
sort.c

被折叠的 条评论
为什么被折叠?