2007-07-25
数字从小到大排序,二分法
关键字: java基础,数字排序,二分法
package com.kingo;
public class Sort {
//从小到大排序
public static int[] sort(int[] arr) {
for (int i = 0; i < arr.length; i++) {
for (int j = i; j < arr.length; j++) {
if (arr[i] > arr[j]) {
int x = arr[i];
arr[i] = arr[j];
arr[j] = x;
}
}
}
return arr;
}
public static void main(String[] args) {
int beforeSort[] = { 13, 21, 45, 65, 765, 33, 88, 44, 22, 5, 25 };
int afterSort[] = sort(beforeSort);
//打印出排序后的数字
for (int i = 0; i < afterSort.length; i++) {
System.out.println(i + ":" + afterSort[i]);
}
System.out.println("er fen 33:" + erfen(33, afterSort));
}
private static int erfen(int i, int[] arr) {
return fenfen(i,0,arr.length-1,arr);
}
//二分法,寻找数字做在数组的位置
private static int fenfen(int dst, int offset, int end, int[] arr) {
if(offset==end){
return arr[offset]==dst?offset:-1;
}else{
if(arr[(offset+end)/2] == dst){
return (offset+end)/2;
}else{
return arr[(offset+end)/2]>dst?fenfen(dst,offset,(offset+end)/2,arr):fenfen(dst,(offset+end)/2,end,arr);
}
}
}
}
public class Sort {
//从小到大排序
public static int[] sort(int[] arr) {
for (int i = 0; i < arr.length; i++) {
for (int j = i; j < arr.length; j++) {
if (arr[i] > arr[j]) {
int x = arr[i];
arr[i] = arr[j];
arr[j] = x;
}
}
}
return arr;
}
public static void main(String[] args) {
int beforeSort[] = { 13, 21, 45, 65, 765, 33, 88, 44, 22, 5, 25 };
int afterSort[] = sort(beforeSort);
//打印出排序后的数字
for (int i = 0; i < afterSort.length; i++) {
System.out.println(i + ":" + afterSort[i]);
}
System.out.println("er fen 33:" + erfen(33, afterSort));
}
private static int erfen(int i, int[] arr) {
return fenfen(i,0,arr.length-1,arr);
}
//二分法,寻找数字做在数组的位置
private static int fenfen(int dst, int offset, int end, int[] arr) {
if(offset==end){
return arr[offset]==dst?offset:-1;
}else{
if(arr[(offset+end)/2] == dst){
return (offset+end)/2;
}else{
return arr[(offset+end)/2]>dst?fenfen(dst,offset,(offset+end)/2,arr):fenfen(dst,(offset+end)/2,end,arr);
}
}
}
}
- 浏览: 56341 次
- 性别:

- 来自: 上海

- 详细资料
搜索本博客
我的相册
seam.jpg
共 13 张
共 13 张
最近加入圈子
最新评论
-
Gwt-Ext学习笔记之基础篇
问题已经解决
-- by chinahcl -
Gwt-Ext学习笔记之基础篇
[ERROR] Unable to find 'com/google/gwt/u ...
-- by chinahcl -
Gwt-Ext学习笔记之基础篇
谢谢楼主,楼主厉害
-- by chinahcl -
Seam实例教程(环境配置)
不好意思,为什么照你这样做的,但是会报错, 10:30:39,562 INFO ...
-- by yuyanshan -
Seam实例教程(环境配置)
总算自己弄明白了
-- by afadgaeg






评论排行榜