zoukankan
html css js c++ java
希尔排序(C#数据结构学习八)
using
System;
using
System.Collections.Generic;
using
System.Text;
namespace
SoloDataStructure
{
class
MyShellSort
{
/**/
///
<summary>
///
希尔排序
///
</summary>
///
<param name="arr">
需要排序的数列
</param>
static
void
ShellSort (
int
[] arr)
{
int
temp;
//
int
n
=
arr.Length;
int
gap
=
n
/
2
;
//
初始步长
while
(gap
!=
0
)
{
for
(
int
i
=
gap; i
<
arr.Length; i
++
)
{
int
j;
temp
=
arr[i];
for
(j
=
i; j
>=
gap; j
=
j
-
gap)
//
同子序列的插入排序
{
if
(temp
<
arr[j
-
gap])
arr[j]
=
arr[j
-
gap];
//
如果后面的小于前面的,交换位置
else
break
;
}
arr[j]
=
temp;
//
插入
}
gap
/=
2
;
//
缩短步长
}
}
static
void
Main(
string
[] args)
{
int
[] arr
=
new
int
[]
{
99
,
198
,
97
,
96
,
905
,
44
,
93
,
2
,
91
}
;
Console.Write(
"
希尔排序前:
"
);
for
(
int
i
=
0
; i
<
arr.Length; i
++
)
Console.Write(arr[i]
+
"
.
"
);
ShellSort(arr);
Console.Write(
"
\n希尔排序后:
"
);
for
(
int
i
=
0
; i
<
arr.Length; i
++
)
Console.Write(arr[i]
+
"
.
"
);
Console.ReadLine();
}
}
}
查看全文
相关阅读:
Solidity safesub防止溢出
Solidity字符串拼接实现oraclize动态查询
Solidity mapping循环
Solidity 合约调用合约
Solidity string to uint
Solidity智能合约升级解决方案
Solidity部署问题
linux 安装xwiki
linux 安装 java
linux 安装tomcat
原文地址:https://www.cnblogs.com/solo/p/609674.html
最新文章
rest framework 认证
Restful API 设计
GitBook 入门学习
Linux 97个常用命令
Linux 之问题集锦(一)
Linux 基础命令(二)
Linux 基础命令(一)
前端开发
数据结构
前端开发
热门文章
前端开发
前端开发
数据库查询
后端开发
后端开发
前端开发
后端开发
关于oraclize使用最好的一篇文章
智能合约生成随机数
Solidity oraclize解析Json格式数据
Copyright © 2011-2022 走看看