博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Java Day 05
阅读量:4624 次
发布时间:2019-06-09

本文共 1308 字,大约阅读时间需要 4 分钟。

数组第二种定义

 
数组-遍历
 数组操作的核心思想就是对角标的操作;
 
数组-求最值
 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()

转载于:https://www.cnblogs.com/zhuzhuqwa/p/5862253.html

你可能感兴趣的文章
写页面得来的体会
查看>>
软件测试
查看>>
Js 提交 form 表单
查看>>
Response.Status http协议状态代码
查看>>
Luogu5405 CTS2019氪金手游(容斥原理+树形dp)
查看>>
BZOJ4925 城市规划
查看>>
Codeforces Round#516 Div.1 翻车记
查看>>
Codeforces Round #521 Div. 3 玩耍记
查看>>
简单计算题:鸡兔同笼
查看>>
linux内核配置与编译
查看>>
Docker---Run命令
查看>>
直角三角形填数
查看>>
This function or variable may be unsafe
查看>>
function Language
查看>>
WEB测试重点--(转载)
查看>>
【C/C++开发】运算符重载二
查看>>
【linux开发】Linux下配置java环境 安装eclipse
查看>>
HTTP入门
查看>>
Android缓存
查看>>
条件语句,while循环语句:完整的温度转换程序
查看>>