Facebook算法swift实现

写作时间:2018-07~2018-08
Swift 4.2, IDE: Xcode 10

算法解决题目为 LeetCode 上 Facebook 的面试题目:

1,10,13,15,17,20,23,25,26,28,33,38,43,44,49,50,56,57,67,68,69,71,75,76
78,79,80,85,88,90,91,98,102,117,121,125,127,128,133,139,146,157,158,161
168,173,200,206,208,209,210,211,215,218,221,234,235,236,238,252,253,257
261,265,269,273,274,275,277,278,282,283,285,286,297,301,311,314,325,334
341,377,380,398,404,410,461,477,494,523,525,534,535,543,554

java 实现的代码: awesome-java-leetcode, 更新原有库一些没有实现的算法。

如果想知道更多公司 LeetCode 面试题,可以参看 Companies.md

代码下载:
https://github.com/zgpeace/awesome-swift-leetcode

Easy

# Title Tag
1 Two Sum Array, Hash Table
7 Reverse Integer Math
9 Palindrome Number Math
13 Roman to Integer Math, String
14 Longest Common Prefix String
20 Valid Parentheses Stack, String
21 Merge Two Sorted Lists Linked List
26 Remove Duplicates from Sorted Array Array, Two Pointers
27 Remove Element Array, Two Pointers
28 Implement strStr() Two Pointers, String
35 Search Insert Position String
38 Count and Say String
53 Maximum Subarray Array, Divide and Conquer, Dynamic Programming
58 Length of Last Word String
66 Plus One Array, Math
67 Add Binary Math, String
69 Sqrt(x) Binary Search, Math
70 Climbing Stairs Dynamic Programming
83 Remove Duplicates from Sorted List Linked List
88 Merge Sorted Array Array, Two Pointers
100 Same Tree Tree, Depth-first Search
101 Symmetric Tree Tree, Depth-first Search, Breadth-first Search
104 Maximum Depth of Binary Tree Tree, Depth-first Search
107 Binary Tree Level Order Traversal II Tree, Breadth-first Search
108 Convert Sorted Array to Binary Search Tree Tree, Depth-first Search
110 Balanced Binary Tree Tree, Depth-first Search
111 Minimum Depth of Binary Tree Tree, Depth-first Search, Breadth-first Search
112 Path Sum Tree, Depth-first Search
118 Pascal’s Triangle Array
119 Pascal’s Triangle II Array
121 Best Time to Buy and Sell Stock Array, Dynamic Programmin
122 Best Time to Buy and Sell Stock II Array, Greedy
543 Diameter of Binary Tree Tree

Medium

# Title Tag
2 Add Two Numbers Linked List, Math
3 Longest Substring Without Repeating Characters Hash Table, Two Pointers, String
5 Longest Palindromic Substring String, Dynamic Programming
6 ZigZag Conversion String
8 String to Integer (atoi) Math, String
11 Container With Most Water Array, Two Pointers
12 Integer to Roman Math, String
15 3Sum Array, Two Pointers
16 3Sum Closest Array, Two Pointers
17 Letter Combinations of a Phone Number String, Backtracking
18 4Sum Array, Hash Table, Two Pointers
19 Remove Nth Node From End of List Linked List, Two Pointers
22 Generate Parentheses String, Backtracking
24 Swap Nodes in Pairs Linked List
29 Divide Two Integers Math, Binary Search
33 Search in Rotated Sorted Array Arrays, Binary Search
43 Multiply Strings Math, String
49 Group Anagrams Hash Table, String
50 Pow(x, n) Math, Binary Search
56 Merge Intervals Array, Sort
554 Brick Wall Hash Table

Hard

# Title Tag
4 Median of Two Sorted Arrays Array, Binary Search, Divide and Conquer
10 Regular Expression Matching String, Dynamic Programming, Backtracking
23 Merge k Sorted Lists Linked List, Divide and Conquer, Heap
25 Reverse Nodes in k-Group Linked List
30 Substring with Concatenation of All Words Hash Table, Two Pointers, String
44 Wildcard Matching String, Dynamic Programming, Backtracking, Greedy
57 Insert Interval Array, Sort
68 Text Justification String

参考: Blankj/awesome-java-leetcode

猜你喜欢

转载自blog.csdn.net/zgpeace/article/details/86062660