当前位置: 首页 > news >正文

做网站一般字号要做多少外贸网站下载

做网站一般字号要做多少,外贸网站下载,做的好的手机网站有哪些内容,公司注册资金认缴和实缴的区别统计每个元素出现的次数,直接计算元素在有序序列中的位置,要求数据是整数且范围有限。适用于数据为小范围整数(如年龄、成绩),数据重复率较高时效率更优。可用于小范围整数排序、基数排序的底层排序(作为基数排序的稳定…

统计每个元素出现的次数,直接计算元素在有序序列中的位置,要求数据是整数且范围有限。适用于数据为小范围整数(如年龄、成绩),数据重复率较高时效率更优。可用于小范围整数排序、基数排序的底层排序(作为基数排序的稳定排序子过程)、统计频率分布(快速获取元素分布直方图)、海量数据预处理(配合外部排序处理大数据文件)

#include <stdlib.h>
#include <assert.h>// 计数排序核心函数(稳定排序版本)
void countingSort(int arr[], int n) {if (n <= 1) return; // 无需排序// 1. 确定数据范围int max = arr[0], min = arr[0];for (int i = 1; i < n; i++) {if (arr[i] > max) max = arr[i];if (arr[i] < min) min = arr[i];}const int range = max - min + 1; // 实际数值范围// 2. 创建计数数组并初始化int* count = (int*)calloc(range, sizeof(int));assert(count != NULL);// 3. 统计每个元素出现次数for (int i = 0; i < n; i++) {count[arr[i] - min]++; // 偏移处理负数}// 4. 计算累计位置(保证稳定性)for (int i = 1; i < range; i++) {count[i] += count[i - 1];}// 5. 反向填充结果数组(关键稳定性操作)int* output = (int*)malloc(n * sizeof(int));assert(output != NULL);for (int i = n - 1; i >= 0; i--) {output[count[arr[i] - min] - 1] = arr[i];count[arr[i] - min]--;}// 6. 复制回原数组for (int i = 0; i < n; i++) {arr[i] = output[i];}// 7. 释放内存free(count);free(output);
}
#include <stdio.h>
// 打印数组
void printArray(int arr[], int size) {for (int i = 0; i < size; i++) {printf("%d ", arr[i]);}printf("\n");
}int main() {// 测试数据(包含负数)int arr[] = {-5, 2, -3, 4, 1, 2, 8, 5, 3, -1};int n = sizeof(arr) / sizeof(arr[0]);printf("排序前: ");printArray(arr, n);countingSort(arr, n);printf("排序后: ");printArray(arr, n);return 0;
}

优化建议:

1.通过min值偏移处理负数,支持全整数范围排序

2.通过反向遍历填充输出数组,保留相同元素的原始顺序,已保证稳定性

3.动态计算range值,避免不必要的内存浪费

void countingSortSpaceOptimized(int arr[], int n) {// ...(省略范围计算步骤)...// 直接根据计数数组覆盖原数组(非稳定)int idx = 0;for (int i = 0; i < range; i++) {while (count[i]-- > 0) {arr[idx++] = i + min;}}
}

http://www.yayakq.cn/news/76918/

相关文章:

  • 门户网站内容管理系统wordpress幻灯片的调用代码
  • 旅游网站设计图片兰州瞒报数据
  • 站长工具视频汕头网站制作全过程
  • 做1688网站需要懂英语吗江门装修公司排名前十名
  • 二维码制作网站有哪些行业信息采集软件
  • 功能型网站多少钱二室一厅60平米装修案例
  • 青岛哪家公司做网站好网站移动端和PC端自适应怎么做
  • 网站排行榜查询wordpress mysql瓶颈
  • 制作线下交易平台网站建设湛江seo建站
  • 汕头建站模板建设工程类型分为几类
  • 昆山网站建设价格备用参考网页设计入门书哪本比较好
  • 企企业业网网站站建建设设设计友好的网站
  • 建设网站需要几个人完成房地产公司网站建设模板
  • 免费网站站长推广手机金融界网站
  • 湖南网站排名网站虚拟主机费用
  • 刚做的网站适合做外链吗房地产找客源10个方法
  • 自己可以建个免费网站吗wordpress u-degin
  • 电子商务网站建设有什么意义微信微商软件
  • 在网站建设中遇到的问题视觉设计作品
  • 浙江省建设职业注册中心网站威联通nas 做网站
  • 网站 网络推广怎么把网站列入黑名单
  • 网站建设逻辑组织的几种模型蒲公英网站建设
  • 网站想换个风格怎么做erp软件有哪些
  • 网页设计免费网站推荐北京网站建设 网站维护
  • 公司网站如何制作价格wordpress建站吗
  • 成都兴光华城市建设公司网站成都企业网站建设那家好
  • dw用ps切片做网站公众号怎么开通收费功能
  • 深圳知名网站建设价格有域名如何做网站
  • 二手房中介网站模板电子网站建设ppt模板
  • 科院公司网站建设目标是什么微山县建设.局网站