//希尔排序
static int[] ShellSort(int[] array)
{
if (array != null)
{
int[] list = { 9, 5, 3, 2, 1 };
foreach (int k in list)
{
for (int i = k; i < array.Length; i++)
{
int current = array[i];
int preIndex = i - k;
while (preIndex >= 0 && preIndex < array.Length && current < array[preIndex])
{
array[preIndex + k] = array[preIndex]; preIndex = preIndex - k;
}
array[preIndex + k] = current;
}
}
}
return array;
}
//插入排序
public int[] InsertSort(int[] array)
{
if (array != null)
{
int k = 1;//使用k变量,后面更好的扩展到Shell排序
for (int i = k; i < array.Length; i++)
{
int current = array[i];
int preIndex = i - k;
while (preIndex >= 0 && preIndex < array.Length && current < array[preIndex])
{
array[preIndex + k] = array[preIndex]; preIndex = preIndex - k;
}
array[preIndex + k] = current;
}
}
return array;
}
//冒泡排序
public int[] BubbleSort(int[] array)
{
if (array != null)
{
for (int i = 0; i < array.Length; i++)
{
for (int j = 1; j < array.Length - i; j++)
{
if (array[j - 1] > array[j])
{
int temp = array[j - 1];
array[j - 1] = array[j];
array[j] = temp;
}
}
}
}
return array;
}

最新文章

  1. Gravatar注册
  2. POJ(2187)用凸包求最远点对
  3. C# 毕业证书打印《二》
  4. Unity Standard Assets 简介之 Utility
  5. java 堆栈
  6. c++ 操作注册表
  7. 基于局部敏感哈希的协同过滤推荐算法之E^2LSH
  8. SSH—Struts(三)—跑步者(Action)
  9. Codeforces 869C The Intriguing Obsession
  10. MySQL备份mydumper的原理【转】
  11. c/c++ 标准库 string
  12. 词云wordcloud入门示例
  13. windows快速进入安装目录
  14. 在 Ubuntu 18.04 下安装 fcitx 及搜狗拼音输入法
  15. office(Word、Excel、PPT等图标异常和桌面无新建解决方案)
  16. 超详细 Nginx 极简教程,傻瓜一看也会!
  17. 微信公众号H5支付步骤
  18. Linux环境变量加载顺序
  19. RR和RC复合语句加锁
  20. rabbitmq 基本信息

热门文章

  1. iOS - .a静态库的打包(包括打包的文件中用到了一些别人的三方库和分类的处理)
  2. PHP Math 函数
  3. hosts文件权限导致监听无法启动
  4. 结合谷歌地图多边形(polygon)与Sql Server 2008的空间数据类型计算某个点是否在多边形内的注意事项
  5. JMeter执行dos命令
  6. [NHibernate]利用LINQPad查看NHibernate生成SQL语句
  7. supervisor-2:event
  8. 【HTTP】模拟form提交表单(转)
  9. Android SDK Manager 更新代理配置
  10. C语言中函数声明实现的位置