随笔分类 - 数据结构与算法
摘要:题目描述如图: 解法基本分为两类,一类是转成字符数组,然后逐个比较左边和右边的字符,或者是转成字符串,然后反转,再进行比较,其本质都是单个字符的比较,大家都能想到,就不写了。 另一类是直接对数字进行操作, "leetcode上有人例举了,还不错" 。我写完之后,看别人的代码,简洁好多,自叹不如(不过
阅读全文
摘要:题目如图: 比较简单,代码如下: java private static int removeDuplicates(int[] nums) { int length = nums.length; int headIndex = 0, tailIndex = 1; for (; tailIndex
阅读全文
摘要:题目如图: 其实这道题相当于让我们自己手写indexOf(),平时用惯了api,手写起来不是很容易,我自己就换了好几种写法,代码如下: java private static int strStr(String haystack, String needle) { if (haystack == n
阅读全文
摘要:题目描述如图: 解法一:将待匹配的左括号放入队列或栈(因为只需拿最近一个元素并删除,用数组都行,只不过队列封装了removeLast(),所以直接用就好了) java private static boolean notMatch(char left, char right){ return (le
阅读全文
摘要:```java private static void quickSort(int left, int right, int[] array) { if (left right) { return; } int leftIndex = left, rightIndex = right, flag =
阅读全文
摘要:昨天杭州大搜车面试,面试官出了一道字符算法题,如下: 给定一个字符数组,例如 找出数组中出现次数最多的字符,如果存在相同次数的字符,取第一次出现的字符。 一个问题的解决方案有多种,我当时说了两种(手写了第一种): 利用数据结构的特性,链表保证了插入顺序,Map正是我们想要的字符与出现次数对应关系的映
阅读全文

浙公网安备 33010602011771号