1 / 79
文档名称:

Java数据结构与经典算法——高手必会.doc

格式:doc   大小:1,109KB   页数:79
下载后只包含 1 个 DOC 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

Java数据结构与经典算法——高手必会.doc

上传人:分享精品 2018/3/27 文件大小:1.08 MB

下载得到文件列表

Java数据结构与经典算法——高手必会.doc

相关文档

文档介绍

文档介绍:大O表示法:粗略的量度方法即算法的速度是如何与数据项的个数相关的
算法大O表示法表示的运行时间
线性查找 O(N)
二分查找 O(logN)
无序数组的插入 O(1)
有序数组的插入 O(N)
无序数组的删除 O(N)
有序数组的删除 O(N)
O(1)是最优秀的,O(logN)良好,O(N)还可以,O(N2)稍差(在冒泡法中见到)
排序
public class JWzw {
//插入排序
public void insertArray(Integer []in){
int tem = 0;
int num = 0;
int upnum = 0;
for (int i = 0; i < ; i++) {
for (int j = i - 1; j >= 0; j--) {
num++;
if (in[j+1] < in[j]) {
tem = in[j+1];
in[j+1] = in[j];
in[j] = tem;
upnum++;
}
else
{
break;
}

}
}
for (int i = 0; i < ; i++) {
(in[i]);
if(i < - 1)
{
(",");
}
}
();
("插入排序循环次数:" + num);
("移动次数:" + upnum);
("\n\n\n");
}

//选择排序
public void chooseArray(Integer []in){
int tem = 0;
int num = 0;
int upnum = 0;
for(int i = 0;i < ;i++)
{
for(int j = i;j < - 1;j++){
num++;
if(in[j+1] < in[j]){
tem = in[j+1];
in[j + 1] = in[j];
in[j] = tem;
upnum++;
}
}
}

for (int i = 0; i < ; i++) {
(in[i]);
if(i < - 1)
{
(",");
}
}
();
("选择排序循环次数:" + num);
("移动次数:" + upnum);
("\n\n\n");
}

//冒泡排序
public void efferArray(Integer []in){
int tem = 0;
int num = 0;
int upnum = 0;
for(int i = 0;i < ;i++){
for(int j = i;j < - 1;j++)
{
num++;
if(in[j+1] < in[i]){
tem = in[j+1];
in[j+1] = in[i];
in[i] = tem;
upnum++;
}
}
}

for (int i = 0; i < ; i++) {
(in[i]);
if(i < - 1)
{
(",");
}
}
();
("冒泡排序循环次数:" + num);
("移动次数:" + upnum);
("\n\n\n");
}

//打印乘法口诀
public void printMulti(){
for (int j = 1; j < 10; j++) {
for (int i = 1; i <= j; i++) {
Syste