博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
表排序(基于插入排序) C~
阅读量:4216 次
发布时间:2019-05-26

本文共 714 字,大约阅读时间需要 2 分钟。

用一个数组 记录 数据的 指针(宏观意义上的指针 , 即 地址)

每次排序 都是对 表table 的变换 并不 对数据本身进行变换。

//基于插入排序的表排序(这里是最简单的数排序,其中的数据可以是各种类型数据,只需要根据相应关键字进行排序就行了)

实现:

#include
#define MAX 10int table[MAX];int data[MAX];void insert_sort(int a[], int n) { int tmp, i, j, k; for(i = 1; i < n; i++){ tmp = a[table[i]]; k = i; for(j = i; a[table[j-1]] > tmp && j > 0;j-- ){ table[j] = table[j-1]; } table[j] = k; } }int main() { int n; int kcase = 0; while(scanf("%d",&n) == 1 && n != 0){ for(int i = 0; i < n; i++ ){ scanf("%d",&data[i]); table[i] = i; } insert_sort(data, n);// 排序 printf("Case %d:", ++kcase); for(int i = 0; i < n; i++ ){ printf("%d ",data[table[i]]); } printf("\n"); } return 0; }

转载地址:http://caimi.baihongyu.com/

你可能感兴趣的文章
测试之途,前途?钱途?图何?
查看>>
反病毒专家谈虚拟机技术 面临两大技术难题
查看>>
几种典型的反病毒技术:特征码技术、覆盖法技术等
查看>>
论文浅尝 | 通过共享表示和结构化预测进行事件和事件时序关系的联合抽取
查看>>
廖雪峰Python教程 学习笔记3 hello.py
查看>>
从内核看epoll的实现(基于5.9.9)
查看>>
python与正则表达式
查看>>
安装.Net Framework 4.7.2时出现“不受信任提供程序信任的根证书中终止”的解决方法
查看>>
input type=“button“与input type=“submit“的区别
查看>>
Linux文件和设备编程
查看>>
文件描述符
查看>>
终端驱动程序:几个简单例子
查看>>
HTML条件注释
查看>>
内核态与用户态
查看>>
趣链 BitXHub跨链平台 (4)跨链网关“初介绍”
查看>>
C++ 字符串string操作
查看>>
MySQL必知必会 -- 了解SQL和MySQL
查看>>
MySQL必知必会 -- 数据检索
查看>>
MySQL必知必会 -- 排序检索数据 ORDER BY
查看>>
POJ 3087 解题报告
查看>>