Implement a stack. You can use any data structure inside a stack except stack itself to implement it. Have you met this question in a real interview? Example push(1) pop() push(2) top() // return 2 pop() isEmpty() // return true push(3) isEmpty()…
28. Implement strStr()[easy] Implement strStr(). Returns the index of the first occurrence of needle in haystack, or -1 if needle is not part of haystack. 解法一: class Solution { public: int strStr(string haystack, string needle) { if (haystack.empty()…
170. Two Sum III - Data structure design[easy] Design and implement a TwoSum class. It should support the following operations:add and find. add - Add the number to an internal data structure.find - Find if there exists any pair of numbers which sum…
206. Reverse Linked List[easy] Reverse a singly linked list. Hint: A linked list can be reversed either iteratively or recursively. Could you implement both? 解法一: class Solution { public: ListNode* reverseList(ListNode* head) { ListNode * pre = NULL;…
83. Remove Duplicates from Sorted List[easy] Given a sorted linked list, delete all duplicates such that each element appear only once. For example,Given 1->1->2, return 1->2.Given 1->1->2->3->3, return 1->2->3. 解法一: /** * Defin…
344. Reverse String[easy] Write a function that takes a string as input and returns the string reversed. Example:Given s = "hello", return "olleh". 解法一: class Solution { public: string reverseString(string s) { , end = s.length() - ; w…
141. Sqrt(x) [easy] Implement int sqrt(int x). Compute and return the square root of x. Example sqrt(3) = 1 sqrt(4) = 2 sqrt(5) = 2 sqrt(10) = 3 Challenge O(log(x)) 解法一: class Solution { public: /* * @param x: An integer * @return: The sqrt of x */…
160. Intersection of Two Linked Lists[easy] Write a program to find the node at which the intersection of two singly linked lists begins. For example, the following two linked lists: A: a1 → a2 ↘ c1 → c2 → c3 ↗ B: b1 → b2 → b3 begin to intersect at n…
203. Remove Linked List Elements[easy] Remove all elements from a linked list of integers that have value val. ExampleGiven: 1 --> 2 --> 6 --> 3 --> 4 --> 5 --> 6, val = 6Return: 1 --> 2 --> 3 --> 4 --> 5 Credits:Special than…
21. Merge Two Sorted Lists[easy] Merge two sorted linked lists and return it as a new list. The new list should be made by splicing together the nodes of the first two lists. 解法一: /** * Definition for singly-linked list. * struct ListNode { * int val…