第十六周--项目一(3)
来源:互联网 发布:网站流量数据统计 编辑:程序博客网 时间:2024/06/05 02:39
*计算机控制工程学院*班级:计156-2*姓名:陈飞*问题及代码:#include <stdio.h> #define MaxSize 20 typedef int KeyType; //定义关键字类型 typedef char InfoType[10]; typedef struct //记录类型 { KeyType key; //关键字项 InfoType data; //其他数据项,类型为InfoType } RecType; //排序的记录类型定义 void InsertSort1(RecType R[],int n) //对R[0..n-1]按递增有序进行直接插入排序 { int i,j,low,high,mid; RecType tmp; for (i=1; i<n; i++) { tmp=R[i]; low=0; high=i-1; while (low<=high) { mid=(low+high)/2; if (tmp.key<R[mid].key) high=mid-1; else low=mid+1; } for (j=i-1; j>=high+1; j--) R[j+1]=R[j]; R[high+1]=tmp; } } int main() { int i,n=10; RecType R[MaxSize]; KeyType a[]= {9,8,7,6,5,4,3,2,1,0}; for (i=0; i<n; i++) R[i].key=a[i]; printf("排序前:"); for (i=0; i<n; i++) printf("%d ",R[i].key); printf("\n"); InsertSort1(R,n); printf("排序后:"); for (i=0; i<n; i++) printf("%d ",R[i].key); printf("\n"); return 0; } 运行结果:
0 0
- 第十六周--项目一(3)
- 第十六周--项目一--验证算法(3)
- 第十六周-项目一 验证算法(3)
- 第十六周项目一(3)直接选择排序
- 第十六周【项目一-(3)冒泡排序】
- 第十六周 项目一 (8)基数排序
- 第十六周【项目一-(8)基数排序】
- 第十六周--项目一(1)
- 第十六周--项目一(2)
- 第十六周 项目一(8) 基数排序
- 第十六周--项目一(4)
- 第十六周--项目一(5)
- 第十六周项目一 平方根
- 第十六周项目一----基数排序
- 第十六周 项目一 - 基数排序
- 第十六周项目3
- 第十六周项目一任务3—字符串
- 第十六周项目一 a阅读程序(3)
- 第十六周项目1-验证算法-堆排序
- 【Leetcode 434. Number of Segments in a String】
- 移动端学习
- 发布java项目或者web项目修改工程名字的问题
- yolo v2微调
- 第十六周--项目一(3)
- 前端开发必须知道的JS(一) 原型和继承
- ios cookie同步和管理偶尔失效问题
- 【第16周 项目4 - 英文单词的基数】
- MAC pro git 使用攻略
- SQL语句(增删改查)
- RNN的四种代表性扩展—Attention and Augmented Recurrent Neural Networks(二)
- getchar()的使用
- 什么是SOA