2020年07月03日
- 优秀代码参考
ID | 题目大致内容 | 解题思想 | 注意点 |
---|---|---|---|
9 | 回文数 | 把数字转成string,再用StringBuilder的reverse方法反转一下,euqals判断是不是内容相同即可 | |
13 | 罗马数字转整数 | 使用hashmap存对应数值,将字符串转为字符数组,如果char[i-1]对应数值 < char[i]对应数字,则sum+=后者数值减前者的差值 | |
14 | 最长公共前缀 | 方法一 暴力。for循环,只需要遍历最短的字符串长度即可,扫面每个字符串的每一列,当遇到不一样直接返回。方法二 二分查找。用 minLength 表示字符串数组中的最短字符串的长度,则可以在 [0,minLength]的范围内通过二分查找得到最长公共前缀的长度。每次取查找范围的中间值 mid,判断每个字符串的长度为 mid 的前缀是否相同,如果相同则最长公共前缀的长度一定大于或等于 mid,如果不相同则最长公共前缀的长度一定小于 mid,通过上述方式将查找范围缩小一半,直到得到最长公共前缀的长度。 |
常用方法积累
类名 | 方法名 | 解释 |
---|---|---|
ArrayList | indexOf(value) | 返回value值对应的索引值, |
ArrayList | copyOfRange(T[ ] original,int from,int to) | 将原数组original,从下标from开始复制,复制到上标to,生成一个新的数组。 |
ArrayList | ans.get(i).append© | 名为ans的ArrayList对象拿出索引i处的元素,并在其后追加一个字符或数字c。注意不是[index] |
HashMap | getOrDefault(Object key, V defaultValue) | 当Map集合中有这个key时,就使用对应的value值,如果没有就使用默认值defaultValue |
Map | entrySet() | 获取所有key和value,遍历的时候用,例子:for (Map.Entry<String, String> entry : map.entrySet()) {System.out.println("key= " + entry.getKey() + " and value= " + entry.getValue());} |
Integer | toBinaryString(num) | 返回num整数的二进制字符串表达 |
Integer | toHexString(num) | 返回num整数的十六进制字符串表达 |
Integer | bitCount(num) | 返回num整数的二进制表达式中1的个数 |
Character | toLowerCase© | 返回c的字母小写形式 |
Character | toUpperCase© | 返回c的字母大写形式 |
Character | isLetter© | 判断c是否为字母 |
String | format(patten,num) | 格式化字符串,比如format("%d:%02d",1,2),输出结果为1:02 |
String | subString(start,end) | 含start,不含end |
StringBuilder | deleteCharAt(index | 删除索引所在处的字符 |
Arrays | fill(Object[] a, Object val) | 再数组a中把所有值都填充为val |
Arrays | equals(s1,s2) | 比较两个数组元素是否相同 |
Arrays | asList(s1,…,sn) | 将一个数组s1,…,sn转换为 List.注意,数组元素不能是原生数据类型(int,long等),要用其包装类Integer等 |
Arrays | set(index,element) | 修改列表中的值。(index指定下标,element指定要修改后元素的值) |
System | arrayCopy(Object src, int srcPos, Object dest, int destPos, int length) | Object src : 原数组; int srcPos:从元数据的起始位置开始; Object dest:目标数组; int destPos:目标数组的开始起始位置; int length:要copy的数组的长度 |
TreeSet | floor(E e) | 返回在这个集合中小于或者等于给定元素的最大元素,如果不存在这样的元素,返回null. |
TreeSet | ceiling(E e) | 返回在这个集合中大于或者等于给定元素的最小元素,如果不存在这样的元素,返回null. |