java 数据结构与排序
来源:互联网 发布:草履虫软件下载 编辑:程序博客网 时间:2024/06/04 23:25
数据结构的特性(数据结构中除了数组之外都可以被认为是抽象数据结构)
数据结构优点缺点数组插入快,如果知道下标,可以非常快地存取查找慢,删除慢,大小固定有序数组比无序的数组查找快删除和插入慢,大小固定栈提供后进先出的存取存取其他项很慢队列提供后进先出的存取存取其他项很慢链表插入快,删除快查找慢二叉树查找、插入、删除都快(如果树保持平衡)删除算法复杂红黑树查找、插入、删除都快。树总是平衡的。算法复杂2-3-4 树查找、插入、删除都快。树总是平衡的。类似的树对磁盘存储有用
算法复杂哈希表如果关键字已知则存储极快。插入快删除慢,如果不知道关键字则存取很慢,对存储空间使用不充分堆插入、删除快,对最大数据项的存取很快对其他数据项存取慢图对现实世界建模有些算法慢且复杂
1.冒泡排序(速度慢):
int[] in={20,80,75,23,56,24,11};
for(int i=in.length-1; i>=1;i--){
for(int j=0;j<i;j++){
if(in[j]>in[j+1]){
int s = in[j+1];
in[j+1] = in[j];
in[j] =s;
}
}
}
for(int ss=0;ss<in.length;ss++){
System.out.println("------------>"+in[ss]);
}
2.选择排序
for (int i = 0; i < in.length; i++) {
int temp = in[i];
int index = i;
for (int j = i + 1; j < in.length; j++) {
if (temp >in[j]) {
temp = in[j];
index = j;
}
}
in[index] = in[i];
in[i] = temp;
}
3.插入排序
int i, j, irt;// 要插入的数据
for (i = 1; i < in.length; i++) {
irt = in[i]; // 设置数组中的第2个元素为第一次循环要插入的数据
j = i - 1;
while (j >= 0 && irt < in[j]) { // 如果要插入的元素小于第j个元素,就将第j个元素向后移动
in[j + 1] = in[j];
j--;
}
in[j + 1] = irt; //将irt插入到数组中
}
- java 数据结构与排序
- Java Map数据结构与排序
- Java Map数据结构与排序
- 冒泡排序 Java数据结构与算法
- 选择排序 Java数据结构与算法
- 插入排序 Java数据结构与算法
- 对象排序 Java数据结构与算法
- 数据结构与算法(JAVA)-简单排序
- Java数据结构与算法--高级排序
- Java与数据结构(上篇:排序算法)
- Java数据结构与算法之排序
- 数据结构---快速排序---java与c++实现
- <二>java数据结构与算法 冒泡排序
- <三>java数据结构与算法 选择排序
- <四>java数据结构与算法 插入排序
- <五>java数据结构与算法 对象排序
- Java数据结构与算法之插入排序
- java数据结构 堆与堆排序
- 初学Nginx(一)监听两个端口,实现转发
- Median [二分]
- 考研数据结构复习之线性表
- 常见的几种RuntimeException
- Oracle exp/imp导入不同的表空间
- java 数据结构与排序
- .net多线程学习
- Socket编程中select函数用法详解(转)
- charles(windows64位) 抓包工具安装及详解
- 柔性数组
- 【Java】Reactor模式
- SpringMVC 图片上传
- GX WORKS2 快捷键
- OpenCV 遍历两点直线上的所有点