admin
-
leetCode-14-Longest-Common-Prefix
题目描述(简单难度) 解法一 垂直比较 我们把所有字符串垂直排列,然后一列一列的比较,直到某一个字符串到达结尾或者该列字符不完全相同。 下边看一下我的代码,看起来比较多 //这个函…
-
leetCode-17-Letter-Combinations-of-a-Phone-Number
题目描述(中等难度) 给一串数字,每个数可以代表数字键下的几个字母,返回这些数字下的字母的所有组成可能。 解法一 定义相乘 自己想了用迭代,用递归,都理不清楚,灵机一动,想出了这个…
-
leetCode-19-Remov-Nth-Node-From-End-of-List
题目描述(中等难度) 给定一个链表,将倒数第 n 个结点删除。 解法一 删除一个结点,无非是遍历链表找到那个结点前边的结点,然后改变下指向就好了。但由于它是链表,它的长度我们并不知…
-
leetCode-20-Valid Parentheses
题目描述(简单难度) 括号匹配问题。 如果只有一种括号,我们完全可以用一个计数器 count ,遍历整个字符串,遇到左括号加 1 ,遇到右括号减 1,遍历结束后,如果 count …
-
leetCode-21-Merge-Two-Sorted-Lists
题目描述(简单难度) 合并两个有序链表。 解法一 迭代 遍历两个链表。 public ListNode mergeTwoLists(ListNode l1, ListNode l2…
-
leetCode-22-Generate-Parentheses
题目描述(中等难度) 给一个数字 n ,返回所有合法的括号匹配,刚好和20题相反。 自己没想出来,全部参考 LeetCode 给出的 Solution。 解法一 暴力破解 列举所有…
-
leetCode-23-Merge-k-Sorted-Lists
题目描述(困难难度) k 个有序链表的合并。 我们用 N 表示链表的总长度,考虑最坏情况,k 个链表的长度相等,都为 n 。 解法一 暴力破解 简单粗暴,遍历所有的链表,将数字存到…
-
leetCode-24-Swap-Nodes-in-Pairs
题目描述(中等难度) 给定一个链表,然后两两交换链表的位置。 解法一 迭代 首先为了避免单独讨论头结点的情况,一般先申请一个空结点指向头结点,然后再用一个指针来遍历整个链表。 先来…
-
leetCode-25-Reverse-Nodes-in-k-Group
题目描述(困难难度) 将一个链表,每 k 个倒置,最后一组不足 k 个就不倒置。 解法一 迭代 关于单链表倒置,我们在第 2 题就讨论过。有了单链表倒置,这道题无非就是用一个循环,…
-
leetCode-26-Remove-Duplicates-from-Sorted-Array
题目描述(简单难度) 返回非重复数字的个数,并且把 nums 里重复的数字也去掉。 例如,nums = [ 1, 1, 2 ] ,那么就返回 2 ,并且把 nums 变成 [ 1,…
-
leetCode-27-Remove-Element
题目描述(简单难度) 和上一题类似,只不过这个是去除给定的值,看起来还更简单些。 例如给了 nums = [ 3, 2, 2, 3 ],val = 3, 然后我们返回 len = …
-
leetCode-28-Implement-strStr
题目描述(简单难度) 返回一个字符串 needle 在另一个字符串 haystack 中开始的位置,如果不存在就返回 -1 ,如果 needle 长度是 0 ,就返回 0 。 就是…
-
leetCode-29-Divide-Two-Integers
题目描述(中等难度) 两个数相除,给出商。不能用乘法,除法和模操作。 本来觉得这道题蛮简单的,记录下自己的坎坷历程。 尝试1 先确定商的符号,然后把被除数和除数通通转为正数,然后用…
-
leetCode-30-Substring-with-Concatenation-of-All-Words
题目描述(困难难度) 给定一个字符串 s ,给定 n 个单词 word,找出所有子串的开始下标,使得子串包含了给定的所有单词,顺序可以不对应。如果有重复的单词,比如有 [ &quo…
-
leetCode-31-Next-Permutation
题目描述(中等难度) 这道题的的难度我觉得理解题意就占了一半。题目的意思是给定一个数,然后将这些数字的位置重新排列,得到一个刚好比原数字大的一种排列。如果没有比原数字大的,就升序输…
-
leetCode-32-Longest-Valid-Parentheses
题目描述(困难难度) 给一个一堆括号的字符串,然后返回最长的合法的括号的长度。关于括号的问题,我们在 20 题和 22 题也讨论过。 解法一 暴力解法 列举所有的字符串,然后判断每…
-
leetCode-33-Search-in-Rotated-Sorted-Array
题目描述(中等难度) 开始的时候想复杂了,其实就是一个排序好的数组,把前边的若干的个数,一起移动到末尾就行了。然后在 log (n) 下找到给定数字的下标。 总的来说,log(n)…
-
leetCode-34-Find-First-and-Last-Position-of-Element-in-Sorted-Array
题目描述(中等难度) 找到目标值的第一次出现和最后一次出现的位置,同样要求 log ( n ) 下完成。 先分享 leetcode 提供的两个解法。 解法一 线性扫描 从左向右遍历…
-
leetCode-35-Search-Insert-Position
题目描述(简单难度) 给定一个有序数组,依旧是二分查找,不同之处是如果没有找到指定数字,需要返回这个数字应该插入的位置。 这道题比较简单,在二分查找的基础上,只要想清楚返回啥就够了…
-
leetCode-36-Valid-Sudoku
题目描述(中等难度) 一个 9 * 9 的数独的棋盘。判断已经写入数字的棋盘是不是合法。需要满足下边三点, 每一行的数字不能重复 每一列的数字不能重复 9 个 3 * 3 的小棋盘…