![](https://img-blog.csdnimg.cn/20201014180756724.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
LeetCode
橙煦媛
hello,world
展开
-
[LeetCode] 24. Swap Nodes in Pairs java
/**24. Swap Nodes in Pairs * @param head * @return 交换相邻的两个节点值 */ public ListNode swapPairs(ListNode head) { if (head == null || head.next == null){ return head;原创 2017-03-23 15:34:01 · 251 阅读 · 0 评论 -
[LeetCode] 58. Length of Last Word java
/**58. Length of Last Word * @param s * @returnint */ public int lengthOfLastWord(String s) { if (s == null || s.length() == 0) { return 0; } int原创 2017-03-07 09:21:06 · 160 阅读 · 0 评论 -
[LeetCode] 71. Simplify Path java
/**71. Simplify Path * @param path * @returnString */ public String simplifyPath(String path) { Stack<String> s = new Stack<String>(); String[] strs = splitString (p原创 2017-03-07 09:20:31 · 147 阅读 · 0 评论 -
[LeetCode] 49. Group Anagrams java
/**49. Group Anagrams * @param strs * @returnList<List<String>> */ public List<List<String>> groupAnagrams1(String[] strs) { List<List<String>> ret = new ArrayList<List<Strin原创 2017-03-07 09:19:13 · 130 阅读 · 0 评论 -
[LeetCode] 438. Find All Anagrams in a String java
/**438. Find All Anagrams in a String * @param s * @param p * @returnList<Integer> 找到子串的开始位置 */ public List<Integer> findAnagrams(String s, String p) { List<Integer> li原创 2017-03-07 09:18:38 · 462 阅读 · 0 评论 -
[LeetCode] 38. Count and Say java
/**38. Count and Say * @param n * @returnString */ public String countAndSay(int n) { if (n == 0) return ""; else if (n == 1) return "1";原创 2017-03-07 09:18:01 · 167 阅读 · 0 评论 -
[LeetCode] 13. Roman to Integer java
/**13. Roman to Integer * @param s * @returnint */ public int romanToInt(String s) { if (s == null || s.length() == 0) return 0; Map<Character , Integer>原创 2017-03-07 09:17:23 · 157 阅读 · 0 评论 -
[LeetCode] 12. Integer to Roman java
/**12. Integer to Roman * @param num * @returnString */ public String intToRoman(int num) { int[] n = {1000, 900, 500, 400, 100, 90, 50, 40, 10, 9, 5, 4, 1}; String[原创 2017-03-07 09:16:47 · 218 阅读 · 0 评论 -
[LeetCode] 14. Longest Common Prefix java
/**14. Longest Common Prefix * @param strs * @returnString 数组中,最长的相同的前缀 */ public String longestCommonPrefix(String[] strs) { if (strs == null || strs.length == 0)原创 2017-03-07 09:16:15 · 150 阅读 · 0 评论 -
[LeetCode] 10. Regular Expression Matching java
/**10. Regular Expression Matching * @param s * @param p * @returnboolean 正则匹配,字符串s是否满足p,支持'.' and '*'. */ public boolean isMatch(String s, String p) { if (p.length() ==原创 2017-03-07 09:13:59 · 349 阅读 · 0 评论 -
[LeetCode] 5. Longest Palindromic Substring java
/**5. Longest Palindromic Substring * @param s * @returnString 最大回文子串 */ public String longestPalindrome(String s) { if (s == null || s.length() <= 1){ return s;原创 2017-03-07 09:13:20 · 133 阅读 · 0 评论 -
[LeetCode] 67. Add Binary java
/**67. Add Binary * @param a * @param b * @returnString 字符串模拟二进制位相加运算 */ public String addBinary(String a, String b) { if (a == null || a.length() ==0)原创 2017-03-07 09:12:41 · 235 阅读 · 0 评论 -
[LeetCode] 8. String to Integer (atoi) java
/**8. String to Integer (atoi) * @param str * @returnint 字符串->数字 */ public int myAtoi(String str) { if (str == null || str.length() == 0) return 0;原创 2017-03-07 09:11:19 · 185 阅读 · 0 评论 -
[LeetCode] 28. Implement strStr() java
/**28. Implement strStr() * @param haystack * @param needle * @returnint needle是不是haystack的子串,是的话就返回这个子串 */ public int strStr(String haystack, String needle) { if (ha原创 2017-03-07 09:10:10 · 185 阅读 · 0 评论 -
[LeetCode] 125. Valid Palindrome java
/**125. Valid Palindrome * @param s * @returnboolean */public boolean isPalindrome(String s) { if (s == null || s.length() <= 1) return true; for (int i=0, j=s.length()-1; i<=j; )原创 2017-03-07 09:08:25 · 183 阅读 · 0 评论 -
[LeetCode] 126. Word Ladder II java
采用BFS广度搜索 先bfs找到endword,同时存储每个单词所处层数 再以endword为目标,往回找到startword,生成路径。 HashMap<String,Integer> path = new HashMap<String,Integer>(); //bfs生成path void bfs(String start, String end, HashSet<转载 2016-12-12 14:23:29 · 667 阅读 · 0 评论 -
leetcode 渣渣刷题目录
数组* Remove Duplicates from Sorted Array* Remove Duplicates from Sorted Array II* Search in Rotated Sorted Array* Search in Rotated Sorted Array II* Median of Two Sorted Arrays* Longest Consecutive原创 2017-03-07 14:21:40 · 203 阅读 · 0 评论 -
[LeetCode] 146. LRU Cache java
/**146. LRU Cache * @date: 2016年10月27日 * @description: http://blog.csdn.net/sbitswc/article/details/35899935*/private HashMap<Integer, DoubleLinkedListNode> map = new HashMap<Integ原创 2017-03-23 15:36:16 · 719 阅读 · 0 评论 -
[LeetCode] 143. Reorder List java
/**143. Reorder List * @param head */ public void reorderList(ListNode head) { if (!(head == null || head.next == null)) { ListNode fast = head; ListNode原创 2017-03-23 15:35:51 · 534 阅读 · 0 评论 -
[LeetCode] 142. Linked List Cycle II java
/**142. Linked List Cycle II * @param head * @return */ public ListNode detectCycle(ListNode head) { if (head == null || head.next == null) { return null;原创 2017-03-23 15:35:29 · 338 阅读 · 0 评论 -
[LeetCode] 141. Linked List Cycle java
/**141. Linked List Cycle * @param head * @return 判断链表是否有环 */ public boolean hasCycle(ListNode head) { if (head == null || head.next == null) { return false;原创 2017-03-23 15:35:09 · 321 阅读 · 0 评论 -
[LeetCode] 138. Copy List with Random Pointer java
/**138. Copy List with Random Pointer * @param head * @return 深度复制一个链表,使用重新分配内存保存新的 */ public RandomListNode copyRandomList(RandomListNode head) { if (head == null || head.ne原创 2017-03-23 15:34:43 · 232 阅读 · 0 评论 -
[LeetCode] 25. Reverse Nodes in k-Group java
/**25. Reverse Nodes in k-Group * @param head * @param k * @return 以k为单位交换节点 */ public ListNode reverseKGroup(ListNode head, int k) { if (head == null || k == 0 || k ==原创 2017-03-23 15:34:21 · 331 阅读 · 0 评论 -
[LeetCode] 19. Remove Nth Node From End of List java
/**19. Remove Nth Node From End of List * @param head * @param n * @return 移除倒数第n个节点 */ public ListNode removeNthFromEnd(ListNode head, int n) { if (head == null || n =原创 2017-03-23 15:33:34 · 269 阅读 · 0 评论 -
[LeetCode] 61. Rotate List java
/**61. Rotate List * @param head * @param k * @return 成环后右移k位 */ public ListNode rotateRight(ListNode head, int k) { if (head == null || k == 0) { return he原创 2017-03-23 15:33:14 · 165 阅读 · 0 评论 -
[LeeCode] 82. Remove Duplicates from Sorted List II java
/**82. Remove Duplicates from Sorted List II * @param head * @return 出现次数>=2的数字全不要 */ public ListNode deleteDuplicates2(ListNode head) { if (head == null || head.next == null原创 2017-03-23 15:32:51 · 344 阅读 · 0 评论 -
[LeetCode] 83. Remove Duplicates from Sorted List java
/**83. Remove Duplicates from Sorted List * @param head * @return 链表去重 */ public ListNode deleteDuplicates(ListNode head) { if (head == null) { return null;原创 2017-03-23 15:32:31 · 184 阅读 · 0 评论 -
[LeetCode] 86. Partition List java
/**86. Partition List * @param head * @param x * @return 比x小放左边,>=x放在右边 */ public ListNode partition(ListNode head, int x) { ListNode left = new ListNode(-1); L原创 2017-03-23 15:31:58 · 231 阅读 · 0 评论 -
[LeetCode] 92. Reverse Linked List II java
/**92. Reverse Linked List II * @param head * @param m * @param n * @return 逆转m-n之间的数字 */ public ListNode reverseBetween(ListNode head, int m, int n) { if (head ==原创 2017-03-23 15:31:34 · 338 阅读 · 0 评论 -
[LeetCode] 2. Add Two Numbers java
/**2. Add Two Numbers * @param l1 * @param l2 * @return 逆序的两个数相加,保存个位数 */ public ListNode addTwoNumbers(ListNode l1, ListNode l2) { ListNode l3 = new ListNode(-1);原创 2017-03-23 15:30:45 · 238 阅读 · 0 评论 -
[LeetCode] 26. Remove Duplicates from Sorted Array java
/** 26. Remove Duplicates from Sorted Array * @param nums * @return 有序数组中删除重复数字 */ public int removeDuplicates(int[] nums) { int count = 0; int len = len = nums.leng原创 2017-03-07 17:03:34 · 185 阅读 · 0 评论 -
[LeetCode] 75. Sort Colors java
/**75. Sort Colors * @param nums * red,white,blue,不能使用常规排序 */ public void sortColors0(int[] nums) { int red = -1, white = -1, blue = -1; for (int i = 0; i < nums.leng原创 2017-03-09 16:13:13 · 176 阅读 · 0 评论 -
[LeetCode] 41. First Missing Positive java
/**41. First Missing Positive * @param nums * @return 第一个缺少的正数 * O(n) */ public int firstMissingPositive(int[] nums) { int len = nums.length; if (nums == null原创 2017-03-09 16:12:49 · 237 阅读 · 0 评论 -
[LeetCode] 148. Sort List java
/**148. Sort List * @param head * @return O(nlogn)给链表排序 */ public ListNode sortList(ListNode head) { if (head == null || head.next == null) return head;原创 2017-03-09 16:12:27 · 697 阅读 · 0 评论 -
[LeetCode] 31. Next Permutation java
/**31. Next Permutation * @param nums */ public void nextPermutation(int[] nums) { int i=nums.length-1; for (; i>0; i--) { if (nums[i] > nums[i-1])原创 2017-03-08 18:03:48 · 176 阅读 · 0 评论 -
[LeetCode] 27. Remove Element java
/**27. Remove Element * @param nums * @param val * @return */ public int removeElement(int[] nums, int val) { int len = 0; for(int i = 0; i < nums.length; i++) {原创 2017-03-08 18:02:34 · 134 阅读 · 0 评论 -
[LeetCode] 18. 4Sum java
/**18. 4Sum * @param nums * @param target * @return 4个数之和为target */ public List<List<Integer>> fourSum(int[] nums, int target) { List<List<Integer>> list = new Array原创 2017-03-08 18:02:10 · 209 阅读 · 0 评论 -
[LeetCode] 16. 3Sum Closest java
/**16. 3Sum Closest * @param nums * @param target * @return 找到3个数,相加最接近target */ public int threeSumClosest(int[] nums, int target) { Arrays.sort(nums); int close原创 2017-03-08 18:01:48 · 287 阅读 · 0 评论 -
[LeetCode] 15. 3Sum java
/**15. 3Sum * @param nums * @return */ public List<List<Integer>> threeSum(int[] nums) { List<List<Integer>> list = new ArrayList<List<Integer>>(); Arrays.sort(nums)原创 2017-03-08 18:00:42 · 187 阅读 · 0 评论 -
[LeetCode] 1. Two Sum java
/**1. Two Sum * @param nums * @param target * @return 数组中找两个数字,相加等于target */ public int[] twoSum(int[] nums, int target) { int[] ret = new int[2]; for (int i=0;原创 2017-03-08 17:59:42 · 166 阅读 · 0 评论