二路插入排序
来源:互联网 发布:777是什么意思网络用语 编辑:程序博客网 时间:2024/06/14 05:38
#include<iostream> using namespace std; typedef int SqList[8]; void Binpath_Insertsort(SqList &L,int count) { int length = count - 1; int L1[length] = { 0 }; L1[0] = L[1];//L中的第一个记录为L1中排好序的记录 int first = 0, last = 0; for (int i = 2; i <= length; ++i)//依次将L的第2个至最后一个记录插入L1中 { if (L[i] < L1[first])//待插入记录小于L1中最小值,插入到L1[first]之前 { first = (first - 1 + length) % length; L1[first] = L[i]; } else if (L[i] > L1[last])//待插入记录大于L1中最小值,插入到L1[last]之后 { last = last + 1; L1[last] = L[i]; } else { int j = last++; while (L[i] <L1[j]) { L1[(j + 1) % length] = L1[j]; j = (j - 1 + length) % length; } L1[j + 1] = L[i]; } } for (int i = 1; i <= length; i++)// 把顺序表L1中的元素依次赋值给L对应位置的元素 { L[i] = L1[(i + first - 1) % length]; } } void main() { SqList a= { 0, 24, 38, 50, 94, 64, 13, 25 }; Binpath_Insertsort(a,8); for (int i = 0; i <= 8; ++i) { cout << a[i] << " "; } cout << endl; }
0 0
- 插入排序:二路插入
- 插入排序:二路插入
- 二路插入排序
- 二路插入排序
- 1.3插入排序-二路插入排序
- 插入排序之二路插入排序
- 数据结构-二路插入排序
- 插入排序优化:简单插入排序->二分查找插入排序->二路插入排序->shell插入排序
- 【插入排序】直接,折半,二路,希尔
- 【插入排序】直接,折半,二路,希尔
- (26)二路插入排序
- 插入排序(二)
- 二、插入排序
- 二、插入排序
- (1.3.3.1)插入排序:二路插入
- 排序算法二 插入排序
- 排序算法(二) - 插入排序
- 【排序之二】插入排序
- python爬取多页gif图像
- leetcode-6ZigZag Conversion
- 黑马程序员--泛型
- 上门洗车APP --- Android客户端开发 之 网络框架封装介绍(一)
- windows程序设计(滚动条)
- 二路插入排序
- Codeforces 552E Vanya and Brackets
- 微信的接口网页授权获取用户基本信息不是只有认证服务号才有
- (入门菜鸟级别程序员)微信开发java遇到的难题,分享给其他新人微信开发者
- 面对工业4.0,我国工业企业的挑战与对策
- UIStepper
- ubuntu安装rabbitvcs
- 二维指针的三种内存类型
- waqs应用如何安装