第三题:URL化
觉得较好的解题思路:从后面开始遍历,如果遇到空格,那么填充%20(倒过来依次填02%),否则照搬
第四题:字符串压缩
官方题解:
注意:
❄刚开始用第一个字符S【0】作为匹配字符,下面的循环对比就从S【1】开始;
❄当匹配字符更换了,这个字符num就为1,而不是从零开始;
❄string+=num和string=string+num有是否重新开辟空间的区别,前者相当于append
❄最后一个字符没有经历被匹配,所以退出循环后要加上(因为字符追加是在被匹配然后替换的时候,最后一个字符没有经历被替换);
❄string+=num+char可以一次加上2个字符,比较简洁
个人觉得比较有意思的题解:
感觉类似于某种排序算法,选用left、right两个标志为,但遇到相同字符right++,不同字符两者差值即为同字符个数,然后left=right(这样算的话就不要在计算个数的时候考虑+1)重新计算新字符