- 1、本文档共10页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
内部排序算法实现(C#语言)内部排序算法实现(C#语言)
这里将介绍几种常见的内部排序算法,包括:直接插入排序、二分查找插入排序、希尔排序、选择排序、堆排序、冒泡排序、快速排序、归并排序。
假设待排序的对象是整型数组,排序操作直接在数组上进行。下面直接上代码及相应注释。
///summary
///各种排序算法实现
////summary
class InnerSortAlgorithm
{
/// summary
/// 直接插入排序算法。
/// para
/// 往已经排好序的序列中插入待排元素,在查找待排元素位置时顺便进行元素移动。
/// /para
/// /summary
/// param name=iArr给定待排序数组/param
public void InnerSort_DirectInsert(int[] iArr)
{
int len = iArr.Length;
int tempI;
int j;
for (int i = 1; i len; i++)
{
tempI = iArr[i];
j = i - 1;
while (j = 0 iArr[j] tempI)
{
iArr[j + 1] = iArr[j];
j--;
}
iArr[j + 1] = tempI;
}
}
/// summary
/// 二分查找插入排序。
/// para
/// 在已排好序的序列中插入元素,插入位置通过二分查找获得。
/// /para
/// /summary
/// param name=iArr给定待排序数组/param
public void InnerSort_BinaryInsert(int[] iArr)
{
int len = iArr.Length;
int pos;
int tempI;
for (int i = 1; i len; i++)
{
tempI = iArr[i];
pos = FindInsertPosition(iArr, i - 1, tempI); //查找待插入位置
for (int j = i; j pos; j--)
{
iArr[j] = iArr[j - 1];
}
iArr[pos] = tempI;
}
}
/// summary
/// 二分查找确定待插入位置。
/// /summary
/// param name=iArr给定数组/param
/// param name=endPos已排序序列末尾下标/param
/// param name=tempI待插入元素/param
/// returns返回插入位置/returns
private int FindInsertPosition(int[] iArr, int endPos, int tempI)
{
int startPos = 0;
int midPos;
while (startPos = endPos)
{
midPos = (startPos + endPos) / 2;
if (iArr[midPos] t
您可能关注的文档
- 关注小学生语文课前预习关注小学生语文课前预习.doc
- 关税减让对我国农产品进出口的影响关税减让对我国农产品进出口的影响.doc
- 关注课堂提高有效性的方案关注课堂提高有效性的方案.doc
- 关注网络安全 增强防范意识关注网络安全 增强防范意识.ppt
- 关系查询处理和查询优化关系查询处理和查询优化.ppt
- 关闭笔记本电脑的小键盘(解决打字符出数字的问题)关闭笔记本电脑的小键盘(解决打字符出数字的问题).doc
- 兴隆学校教职工岗位责任制2兴隆学校教职工岗位责任制2.doc
- 具理想二极管的浪涌抑制器可保护输入和输出具理想二极管的浪涌抑制器可保护输入和输出.doc
- 具有逻辑流的计算机论文摘要写法及分析具有逻辑流的计算机论文摘要写法及分析.docx
- 典型例题与习题1典型例题与习题1.ppt
文档评论(0)