今天做了下leetcode字符串专题,挺坑的。
1.首先一点就是好几个题做到一半,没思路。或者因为一些边界情况,或者返回的整数值的大小需要处理,没处理导致错误。
2.字符串坑啊,String转char类型(toCharArray方法转),其次题目也刁钻,String s = "",String s=" a",String s = "s ",这样最好提前同trim()方法提前处理一下。
3.KMP算法,BF算法对两个字符串的遍历情况。这2个一定要掌握。
4.一些边界情况一定要想清楚,思路不对,改来改去只会花费更多的时间。直接重新想。
小技巧
Java中, int 除了用api变String还能用
String s = ""+a;
char c = '5';
Char变int类型,int a = c-'0';这样
还有在Java中字符串"c”是一个对象,拿它去与一个变量比较应该用equals方法比较,而不是==比较,因为==比较的情况有2种,当2者之间是基本数据类型的比较就是数值大小之间的比较,如果是对象与对象的比较==操作符比较的是两者的引用地址是否一样。所以这里俩个字符串比较时,如果比较的是内容相等,就应该是用equals方法。
LeetCode13这道题
其实提醒自己要不断去发现规律,特别是碰到那种连续相加相减的题目,更是有可能规律直接被发现了,要不断去尝试