java自学笔记之数组 排序
2013-10-18 21:37
387 查看
数组:同一种类型数据的集合,其实数组就是一个容器。
格式 int[ ] arr = new int[6]; int[ ] arr = new int[ ]{3,5,1,7}; int [ ] arr ={3,5,1,7}
获取数组长度: "数组名.length"。
获取数组元素:for循环遍历输出。
数组排序:
数组查找
今天终于真刀真枪的开始跟着视频教程敲代码了,问题很多,思路老师也已经说的差不多了,但自己敲代码的速度与
小问题还是很严重的,希望自己能坚持下去,今天是自学毕老师java视频的第四天,加油 糖伯貓!
格式 int[ ] arr = new int[6]; int[ ] arr = new int[ ]{3,5,1,7}; int [ ] arr ={3,5,1,7}
获取数组长度: "数组名.length"。
获取数组元素:for循环遍历输出。
数组排序:
选择排序:
class Arraysort { public static void main(String args[]) { int[] arr = {5,1,6,4,2,8,9}; sortarray(arr); printarray(arr); } public static void sortarray(int[] arr) { for (int i=0;i<arr.length-1 ;i++ ) { for (int y=i+1 ;y<arr.length;y++ ) { if (arr[i]>arr[y]) { int temp = 0; temp = arr[i]; arr[i] = arr[y] ; arr[y] = temp; } } } } public static void printarray(int[] arr) { for (int i=0;i<arr.length ;i++ ) { if(i!=arr.length-1) System.out.print(arr[i]+","); else System.out.println(arr[i]); } } }
冒泡排序:
class Bubblesort { public static void main(String args[]) { int [] arr={5,1,6,4,2,8,9}; bubble(arr); printarray(arr); } public static void bubble(int[] arr) { for (int i=0;i<arr.length-1 ;i++ ) { for (int y=0;y<arr.length-i-1 ; y++) { if(arr[y]>arr[y+1]) { int temp = 0; temp = arr[y]; arr[y] = arr[y+1] ; arr[y+1] = temp; } } } } public static void printarray(int[] arr) { for (int i=0;i<arr.length ;i++ ) { if(i!=arr.length-1) System.out.print(arr[i]+","); else System.out.println(arr[i]); } } }
数组查找
折半查找的两种方式:
第一种:class Halfsort { public static void main(String args[]) { int key = 8; int [] arr ={1,5,7,9,12,55,88,95,101}; int index = halfsort(arr,key); System.out.println(index); } public static int halfsort(int[] arr,int key) { int min = 0; int max = arr.length-1; int mid = (min + max)/2; while (key != arr[mid]) { if (key>arr[mid]) { min = mid+1; } else if(key<arr[mid]) { max = mid-1; } if(min>max) return -1; mid = (min + max)/2; } return mid; } }第二种:
class Halfsort2 { public static void main(String args[]) { int key = 10; int [] arr ={1,5,7,9,12,55,88,95,101}; int index = halfsort(arr,key); System.out.println(index); } public static int halfsort(int[] arr,int key) { int min = 0; int max = arr.length-1; int mid = 0; while (min <= max) { mid = (min+max)/2; if (key>arr[mid]) { min = mid+1; } if(key<arr[mid]) { max = mid-1; } if (key==arr[mid]) return mid; } return -1; } }
通过数组实现进制转换:
class Change { public static void main(String args[]) { change(60,15,4); } public static void tobin(int num) { char [] biao = {'0','1'}; char [] arr = new char [32]; int post = arr.length; while (num != 0) { int index = num & 1; arr[--post] = biao[index]; num=num >>>1 ; } for (int i=post;i<arr.length ;i++ ) { System.out.print(arr[i]); } } public static void change(int num, int size,int offsize) { char [] biao = {'0','1','2','3','4', '5','6','7','8', '9','A','B','C', 'D','E','F'}; char [] arr = new char [32]; int post = arr.length; while (num != 0 ) { int index = num & size; arr[--post] = biao [index]; num = num >>> offsize; } for (int i=post ;i<arr.length ;i++ ) { System.out.print(arr[i]); } } }
今天终于真刀真枪的开始跟着视频教程敲代码了,问题很多,思路老师也已经说的差不多了,但自己敲代码的速度与
小问题还是很严重的,希望自己能坚持下去,今天是自学毕老师java视频的第四天,加油 糖伯貓!
相关文章推荐
- JAVA学习笔记(4-2-数组排序|查找)
- JAVA 蹒跚自学之 第六日 续 数组排序 之 选择 冒泡
- Java基础学习笔记 -- 10(数组排序)
- java学习笔记之数组排序
- 数组排序、递归——(Java学习笔记二)
- 《黑马程序员》java笔记->【02】数组的常见操作:遍历,排序,查找
- 【Java学习笔记】基础知识学习5【数组排序,复制】
- java数组排序方法笔记
- 【Java自学笔记系列:数组】
- Java自学笔记(第四天)数组
- 数据结构与算法分析笔记与总结(java实现)--数组9:数字在排序数组中出现的次数
- java学习笔记之数组排序
- Java容器类学习笔记2--数组排序
- Java学习笔记(五)--二维数组 冒泡排序 选择排序 Arrays数组工具类
- 黑马程序员——自学笔记5(数组及其排序)
- NO4.java学习笔记(数组、数组的操作【遍历、排序、查找】)
- Java自学笔记之数组
- java毕向东听课笔记4(数组排序)
- Java 数组排序( 4000 冒泡和选择排序) 学习笔记
- 《黑马程序员》java笔记->基本数据类型包装类及自动拆箱装箱原理,数组排序练习字符串切割