Java基础知识回顾第一篇 - 数组和List之间的相互转换 | 二分法查找 | 冒泡排序 博客分类: Java基础知识回顾 冒泡排序二分法查找Java基础
1、System.arrayCopy(source,0,dest,0,x):语句的意思就是:复制源数组从下标0开始的x个元素到目标数组,从目标数组的下标0所对应的位置开始存取;
2、Arrays.sort(数组名)为数组排序的操作,但这个方法在java.util这个包里面,所以在用到的时候需要先将它导入;
3、二分查找法
package com.tu.test;
/**
* 二分法查找
*
*/
public class BubbleTest {
public static void main(String[] args) {
int [] arrs = {1,2,3,4,5,6,7,8};
System.out.println(BubbleTest.sort(arrs, 5));
}
public static int sort(int [] arrs,int value) {
int low = 0;
int high = arrs.length - 1;
while (low <= high) {
int middle = (low + high) / 2;
if (arrs[middle] == value) {
return middle;
}
if (arrs[middle] > value) {
high = middle - 1;
}
if (arrs[middle] < value) {
low = middle + 1;
}
}
return -1;
}
}
4、冒泡排序
package com.tu.test;
/**
* 冒泡排序
*
*/
public class SortTest {
public static void main(String[] args) {
int [] arrs = {1,23,2,54,4,99,100,3};
SortTest.sort(arrs);
}
public static void sort(int [] arrs) {
System.out.println("=====排序前=====");
for (int i = 0;i < arrs.length; i++) {
System.out.println(arrs[i]);
}
for (int i = 0; i < arrs.length; i++) {
for (int j = i + 1; j < arrs.length; j++) {
int temp = 0;
//交换位置
if (arrs[i] > arrs[j]) {
temp = arrs[i];
arrs[i] = arrs[j];
arrs[j] = temp;
}
}
}
System.out.println("=====排序后=====");
for (int i = 0;i < arrs.length; i++) {
System.out.println(arrs[i]);
}
}
}
注:二分法查找仅针对有序数组,如果一个数组无序,结合冒泡排序,先使数组有序,再使用二分法进行元素查找!
5、数组和List之间的相互转换
数组转List:Arrays.asList
List转数组:使用List的toArray()方法
推荐阅读
-
JAVA中的final关键字用法实例详解
-
asp.net(C#)函数对象参数传递的问题
-
实例分析Java中public static void main(String args[])是什么意思
-
Compass将lucene、Spring、Hibernate三者结合 博客分类: Compass Lucene SpringluceneHibernate搜索引擎XML
-
项目中成功的运用proxool连接池 博客分类: Spring MySQLSpringXMLWebJDBC
-
Java的Struts框架中登陆功能的实现和表单处理器的使用
-
基于Java HttpClient和Htmlparser实现网络爬虫代码
-
新型人性化验证码,拒绝机器人 博客分类: 个人杂谈
-
Sort 博客分类: 数据结构 快速排序冒泡排序
-
JAVA中static方法的用法实例详解