Java知识点总结05-二维数组冒泡
来源:互联网 发布:剑三捏脸数据成男动漫 编辑:程序博客网 时间:2024/05/21 08:00
二维数组:
就是一个元素为一维数组的数组、
动态初始化方式一(指定有多少个长度相同的一维数组):
数据类型[][] 变量名 = new 数据类型[m][n];
m表示这个二维数组有多少个一维数组
n表示每一个一维数组的元素个数
动态初始化方式二(指定二维数组中有多少个一维数组,每一个一维数组的长度不固定):
数据类型[][] 变量名 = new 数据类型[m][];
注意:
m这个数据必须给出,后面的数据可以不给
arr[0] = new int[2];
arr[0][0] = 1;
arr[0][1] = 2;
二维数组的静态初始化:
静态初始化:
数据类型[][] 变量名 = new 数据类型[][]{{元素…},{元素…},{元素…}};
简化格式:
数据类型[][] 变量名 = {{元素…},{元素…},{元素…}};
如果形式参数是基本类型:
形式参数的改变,不影响实际参数。
如果形式参数是引用类型:
形式参数的该变,直接影响实际参数。
冒泡排序:
相邻两个元素进行比较,小的放前面,大的放后面
public class ArraySortDemo {
public static void main(String[] args) {
// 使用冒泡排序给数组int[] arr = { 24, 69, 80, 57, 13 };进行排序
// 创建一个数组
int[] arr = { 24, 69, 64, 23, 67, 45 };
// 第一次排序
/* for (int i = 0; i < arr.length - 1 - 0; i++) {
if (arr[i] > arr[i + 1]) {
int temp = arr[i];
arr[i] = arr[i + 1];
arr[i] = temp;
}
}
// 打印数组
printArr(arr);
// 第二次排序
for (int i = 0; i < arr.length - 1 - 1; i++) {
if (arr[i] > arr[i + 1]) {
// 找一个中间变量
int temp = arr[i];
arr[i] = arr[i + 1];
arr[i + 1] = temp;
}
}
// 打印数组
printArr(arr);
// 第三次排序
for (int i = 0; i < arr.length - 1 - 2; i++) {
if (arr[i] > arr[i + 1]) {
int temp = arr[i];
arr[i] = arr[i + 1];
arr[i + 1] = temp;
}
}
//打印数组
printArr(arr);
//第四次排序
for (int i = 0; i < arr.length - 1 - 3 ; i++) {
//java.lang.ArrayIndexOutOfBoundsException
if (arr[i]>arr[i+1]) {
//找一个中间变量
int temp = arr[i];
arr[i] = arr[i+1];
arr[i+1] = temp;
}
}
printArr(arr);*/
System.out.println("-------------------------");
for (int i = 0; i < arr.length-1; i++) {
for (int j = 0; j < arr.length-1-j; j++) {
if(arr[i]>arr[i+1]){
int temp=arr[i];
arr[i]=arr[i+1];
arr[i+1]=temp;
}
}
}
printArr(arr);
}
使用Arrays数组工具进行操作:
public class StringSortDemo {
public static void main(String[] args) {
// 使用冒泡排序
String s = "dacgebf";
// 转换为字符数组才能遍历
char[] chs = s.toCharArray();
// 使用Arrays里面的sort()方法给字符数组进行排序
Arrays.sort(chs);
// 打印数组
System.out.println(Arrays.toString(chs));
}
}
// 写一个方法打印数组
public static void printArr(int[] arr) {
for (int i = 0; i < arr.length; i++) {
System.out.print(arr[i] + "");
}
System.out.println();
}
}
选择排序:
* 选择排序:
* 从0索引开始,依次和后面的每一个元素进行比较
* 第一次比较完毕,最小值出现在了最小索引处
* 第二次比较完毕,次小值出现在了次小索引处
* ...
* 完毕后,就排序了。
- Java知识点总结05-二维数组冒泡
- Java二维数组冒泡排序
- java二维数组冒泡排序
- Java基础---二维数组、冒泡排序法
- java-冒泡排序 选择排序 二维数组
- Java二维数组长度总结
- 二维数组冒泡排序
- 二维数组冒泡排序
- java中数组知识点总结
- C二维数组冒泡排序
- 二维数组的冒泡排序
- 二维数组及冒泡排序
- 二维数组和冒泡排序
- 二维指针数组冒泡排序
- c++知识点 之 二维数组
- 数组冒泡排序 二维数组元素排序
- Java数组-二维数组
- 【Java】数组--二维数组
- 天下没有免费的午餐啊
- truncate、delete与drop的区别
- JDK1.8源码逐字逐句带你理解LinkedHashMap底层
- HDU5014 Number Sequence(二进制,位运算)
- JSP的3个指令
- Java知识点总结05-二维数组冒泡
- Elasticsearch Java API总汇
- 如何在latex中添加参考文献
- css-centered
- Yachen Zhangmysql证明为什么用限制时间,偏移很大会影响性能
- 高精度除以低精精度数
- IMU加速度、磁力计校正--椭球拟合
- 汉语拼音音节的歧义指数
- STM32CubeMX系列教程,关于随机数发生器RNG和循环冗余校验CRC的应用