码迷,mamicode.com
首页 > 编程语言 > 详细

Java Day 05

时间:2016-09-11 18:44:41      阅读:159      评论:0      收藏:0      [点我收藏+]

标签:

数组第二种定义
 
数组-遍历
 数组操作的核心思想就是对角标的操作;
 
数组-求最值
 1、循环 比较

排序
 选择排序 把原始数组分割成了两个数组,至少有一个是有序的
 冒泡排序 相邻元素比较

位置置换代码提取
 形参

排序性能问题
 选择排序,每一轮找到最小值后才换位

查找
 遍历去比较要查找的值,没有返回-1

折半查找(二分查找)
 前提条件:数组内元素唯一,且有序
 循环 判断条件有:中间值判断;首尾判断
 "/2" 相对与 ">>1"

 如果查找的元素不存在,直接返回插入点(-插入点-1)

 1     public static int binarySearch(int[]arr,int key){
 2         int start = 0;
 3         int end = arr.length-1;
 4         int mid = (start+end)/2;
 5         while(end>start){
 6             if(key==arr[mid]){
 7                 return mid;
 8             }
 9             else if(key>arr[mid]){
10                     start = mid+1;
11             }else{
12                     end=mid-1;    
13             }
14             mid = (start + end)/2;
15         }
16         return -1;
17     }

 

进制转换
 转换为16进制--与运算 &15、无符号右移 >>>4
 (char)temp-10+‘A‘

 使用数组--查表法

 1     public static String trans(int num,int base,int offset){
 2         char[] chs ={‘0‘,‘1‘,‘2‘,‘3‘,
 3                     ‘4‘,‘5‘,‘6‘,‘7‘,
 4                     ‘8‘,‘9‘,‘A‘,‘B‘,
 5                     ‘C‘,‘D‘,‘E‘,‘F‘};
 6         String ss="";
 7         while(true){
 8             int temp = num & base;
 9             ss= chs[temp]+ss;
10             num = num >>> offset;
11             if(num==0)
12                 return ss;
13         }
14     }


 Integer.toBinaryString()

Java Day 05

标签:

原文地址:http://www.cnblogs.com/zhuzhuqwa/p/5862253.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!