
字符串
加油开心
你好呀
展开
-
leetcode:从二叉树一个节点到另一个节点每一步的方向
而StringBuilder你可以看为全局变量,哪怕return了,还是上一次递归的值。比如第一回合找公共祖先,第二回合就是找开始节点递归,第三回合是找结束节点递归。同时作为参数传递,有递归前情况下,String会恢复之前的。不过这题要注意String和StringBuilder。但是很遗憾,通过了一大半用例,好像超出内存限制了。答案的方法,和你思路其实差不多。可能是,我的递归了很多回合。这个题要用的最近公共祖先。原创 2024-10-05 16:29:09 · 229 阅读 · 0 评论 -
leetcode:从叶节点开始的最小字符串
得用一个变量记录下遍历的过程。还是得大胆想,大胆写。原创 2024-09-02 22:15:14 · 226 阅读 · 0 评论 -
leetcode:易混淆数
最后二者相加,比较是否和原来相等即可。我的思路是双指针,一个开头一个结尾。有的话,根据后面求出前半部分对称数。哈希表存的数都有自己的对称数。根据前面求出后半部分对称数。没有的话直接false。原创 2024-08-09 14:47:07 · 190 阅读 · 0 评论 -
leetcode:文件夹操作日志搜集器
就两种特殊情况,剩下管你是d1还是d100,计数变量直接加1即可。这题大致一想,好像还要深入字符串。把一些比较繁琐的可以化为一类。原创 2024-07-29 13:06:47 · 197 阅读 · 0 评论 -
leetcode:验证回文串
存到另一个字符串中,然后逆序比较是否相等。将字符串逐一遍历,判断是不是字母或数字。先把字符串所有非数字字母去除。这个题有很多可用的api。这里我用的是正则表达式。原创 2024-07-25 10:16:37 · 194 阅读 · 0 评论 -
leetcode:二进制求和
短的那一位直接变0即可,因为0不影响相加结果。官方题解就是把二进制数转化为十进制数,相加。比如110+1,可以看成110+001。在把和重新转换为二进制数。如果一个短一个长咋办?原创 2024-07-17 13:29:20 · 146 阅读 · 0 评论 -
leetcode:最后一个单词的长度
从后往前遍历,找到字符串中的最后一个字母,该字母即为最后一个单词的最后一个字母。从最后一个字母开始继续反向遍历字符串,直到遇到空格或者到达字符串的起始位置。\s意思就是匹配任何空白字符,包括不限于空格、制表符、换页符。这个题我使用正则表达式做。原创 2024-07-16 16:00:44 · 226 阅读 · 0 评论 -
leetcode:重复的子字符串
这时候重复两个指针中间夹的abc,为abcabcbabc,判断两个字符串是否相等。很明显从下标1开始找,下一次匹配的索引在3处,不等于s.length。将s和s拼接起来,然后在拼接后的字符串中从下标1开始找s的位置。很明显从下标1开始找,下一次匹配的索引在s.length处。如果找到的位置不等于s的长度,说明可以由某个字串重复得到。接着,右指针继续右移,直到遇到和第一个字符相同的。重复abca,为abcaabca,比较,二者相等。此时左指针指向开头a,右指针指向第二个a。所以不存在字串满足重复构成。原创 2024-07-15 13:59:07 · 258 阅读 · 0 评论 -
leetcode:找出字符串中第一个匹配项的下标
java是不是有字符串匹配函数?于是乎百度,查出来了indexof。哈哈,这个题我刚开始想的是双指针,后来仔细一想。原创 2024-07-15 12:44:19 · 192 阅读 · 0 评论 -
leetcode:最长公共前缀
就是逐一判断,依次遍历字符串数组中的每个字符串,对于每个遍历到的字符串,更新最长公共前缀,当遍历完所有的字符串以后,即可得到字符串数组中的最长公共前缀。还傻乎乎的用node.children[ch-‘a’]差距就是我没想到可以用索引表示位置。看了下答案有人用前缀树做出来了。我一开始用前缀树没做出来。这题还可以用其他方法。原创 2024-07-11 15:29:17 · 225 阅读 · 0 评论 -
leetcode:整数转罗马数字
这里我用到了平衡二叉树。原创 2024-07-08 15:22:05 · 259 阅读 · 0 评论 -
leetcode:罗马数字转整数
【代码】leetcode:罗马数字转整数。原创 2024-07-06 15:53:55 · 246 阅读 · 0 评论 -
leetcode:找到指定长度的回文数
这个题需要在草稿本上找规律。不断修改,终于通过了。原创 2024-07-03 15:40:56 · 134 阅读 · 0 评论 -
leetcode:回文数
比如677787776,后半部分7776反转为6777。比如4553,反转为3554,然后逐一比较即可。和前半部分6777一样,所以是回文。还有一种办法,我们只反转一半。不过此题有另一种解法。有个缺陷就是容易溢出。原创 2024-07-02 16:45:13 · 157 阅读 · 0 评论 -
字符串操作(不断更新)
2.int[]转int型。原创 2024-04-05 13:28:35 · 150 阅读 · 0 评论