Skip to content

Commit

Permalink
[en] add string chapter
Browse files Browse the repository at this point in the history
  • Loading branch information
billryan committed Jan 17, 2016
1 parent 2354c40 commit 223b57f
Show file tree
Hide file tree
Showing 2 changed files with 126 additions and 9 deletions.
129 changes: 120 additions & 9 deletions en/SUMMARY.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,11 +6,16 @@
* [Contributors](faq/contributors.md)
* [Part I - Basics](part_i_basics/README.md)
* [Basics Data Structure](basics_data_structure/README.md)
* [String](basics_data_structure/string.md)
* [Linked List](basics_data_structure/linked_list.md)
* [Binary Tree](basics_data_structure/binary_tree.md)
* [Binary Search Tree](basics_data_structure/binary_search_tree.md)
* [Huffman Compression](basics_data_structure/huffman_compression.md)
* [Priority Queue](basics_data_structure/priority_queue.md)
* [Queue](basics_data_structure/queue.md)
* [Heap](basics_data_structure/heap.md)
* [Stack](basics_data_structure/stack.md)
* [Set](basics_data_structure/set.md)
* [Map](basics_data_structure/map.md)
* [Graph](basics_data_structure/graph.md)
* [Basics Sorting](basics_sorting/README.md)
* [Bubble Sort](basics_sorting/bubble_sort.md)
* [Selection Sort](basics_sorting/selection_sort.md)
Expand All @@ -21,9 +26,19 @@
* [Bucket Sort](basics_sorting/bucket_sort.md)
* [Counting Sort](basics_sorting/counting_sort.md)
* [Radix Sort](basics_sorting/radix_sort.md)
* [Basics Algorithm](basics_algorithm/README.md)
* [Divide and Conquer](basics_algorithm/divide_and_conquer.md)
* [Binary Search](basics_algorithm/binary_search.md)
* [Math](basics_algorithm/math/README.md)
* [Greatest Common Divisor](basics_algorithm/math/gcd.md)
* [Prime](basics_algorithm/math/prime.md)
* [Knapsack](basics_algorithm/knapsack.md)
* [Counting Problem](basics_algorithm/counting_problem.md)
* [Probability](basics_algorithm/probability/README.md)
* [Shuffle](basics_algorithm/probability/shuffle.md)
* [Bitmap](basics_algorithm/bitmap.md)
* [Basics Misc](basics_misc/README.md)
* [Bit Manipulation](basics_misc/bit_manipulation.md)
* [Knapsack](basics_misc/knapsack.md)
* [Part II - Coding](part_ii_coding/README.md)
* [String](string/README.md)
* [strStr](string/strstr.md)
Expand All @@ -35,6 +50,10 @@
* [Reverse Words in a String](string/reverse_words_in_a_string.md)
* [Valid Palindrome](string/valid_palindrome.md)
* [Longest Palindromic Substring](string/longest_palindromic_substring.md)
* [Space Replacement](string/space_replacement.md)
* [Wildcard Matching](string/wildcard_matching.md)
* [Length of Last Word](string/length_of_last_word.md)
* [Count and Say](string/count_and_say.md)
* [Integer Array](integer_array/README.md)
* [Remove Element](integer_array/remove_element.md)
* [Zero Sum Subarray](integer_array/zero_sum_subarray.md)
Expand All @@ -52,16 +71,20 @@
* [Merge Sorted Array](integer_array/merge_sorted_array.md)
* [Merge Sorted Array II](integer_array/merge_sorted_array_ii.md)
* [Median](integer_array/median.md)
* [Partition Array by Odd and Even](integer_array/partition_array_by_odd_and_even.md)
* [Kth Largest Element](integer_array/kth_largest_element.md)
* [Binary Search](binary_search/README.md)
* [Binary Search](binary_search/binary_search.md)
* [Search Insert Position](binary_search/search_insert_position.md)
* [Search for a Range](binary_search/search_for_a_range.md)
* [First Bad Version](binary_search/first_bad_version.md)
* [Search a 2D Matrix](binary_search/search_a_2d_matrix.md)
* [Search a 2D Matrix II](binary_search/search_a_2d_matrix_ii.md)
* [Find Peak Element](binary_search/find_peak_element.md)
* [Search in Rotated Sorted Array](binary_search/search_in_rotated_sorted_array.md)
* [Search in Rotated Sorted Array II](binary_search/search_in_rotated_sorted_array_ii.md)
* [Find Minimum in Rotated Sorted Array](binary_search/find_minimum_in_rotated_sorted_array.md)
* [Search a 2D Matrix II](binary_search/search_a_2d_matrix_ii.md)
* [Find Minimum in Rotated Sorted Array II](binary_search/find_minimum_in_rotated_sorted_array_ii.md)
* [Median of two Sorted Arrays](binary_search/median_of_two_sorted_arrays.md)
* [Sqrt x](binary_search/sqrt_x.md)
* [Wood Cut](binary_search/wood_cut.md)
Expand All @@ -75,12 +98,23 @@
* [Unique Binary Search Trees](math_and_bit_manipulation/unique_binary_search_trees.md)
* [Update Bits](math_and_bit_manipulation/update_bits.md)
* [Fast Power](math_and_bit_manipulation/fast_power.md)
* [Hash Function](math_and_bit_manipulation/hash_function.md)
* [Count 1 in Binary](math_and_bit_manipulation/count_1_in_binary.md)
* [Fibonacci](math_and_bit_manipulation/fibonacci.md)
* [A plus B Problem](math_and_bit_manipulation/a_plus_b_problem.md)
* [Print Numbers by Recursion](math_and_bit_manipulation/print_numbers_by_recursion.md)
* [Majority Number](math_and_bit_manipulation/majority_number.md)
* [Majority Number II](math_and_bit_manipulation/majority_number_ii.md)
* [Majority Number III](math_and_bit_manipulation/majority_number_iii.md)
* [Digit Counts](math_and_bit_manipulation/digit_counts.md)
* [Ugly Number](math_and_bit_manipulation/ugly_number.md)
* [Plus One](math_and_bit_manipulation/plus_one.md)
* [Linked List](linked_list/README.md)
* [Remove Duplicates from Sorted List](linked_list/remove_duplicates_from_sorted_list.md)
* [Remove Duplicates from Sorted List II](linked_list/remove_duplicates_from_sorted_list_ii.md)
* [Remove Duplicates from Unsorted List](linked_list/remove_duplicates_from_an_unsorted_linked_list.md)
* [Partition List](linked_list/partition_list.md)
* [Two Lists Sum](linked_list/two_lists_sum.md)
* [Add Two Numbers](linked_list/add_two_numbers.md)
* [Two Lists Sum Advanced](linked_list/two_lists_sum_advanced.md)
* [Remove Nth Node From End of List](linked_list/remove_nth_node_from_end_of_list.md)
* [Linked List Cycle](linked_list/linked_list_cycle.md)
Expand All @@ -93,16 +127,29 @@
* [Copy List with Random Pointer](linked_list/copy_list_with_random_pointer.md)
* [Sort List](linked_list/sort_list.md)
* [Insertion Sort List](linked_list/insertion_sort_list.md)
* [Check if a singly linked list is palindrome](linked_list/check_if_a_singly_linked_list_is_palindrome.md)
* [Palindrome Linked List](linked_list/palindrome_linked_list.md)
* [Delete Node in the Middle of Singly Linked List](linked_list/delete_node_in_the_middle_of_singly_linked_list.md)
* [LRU Cache](linked_list/lru_cache.md)
* [Rotate List](linked_list/rotate_list.md)
* [Swap Nodes in Pairs](linked_list/swap_nodes_in_pairs.md)
* [Remove Linked List Elements](linked_list/remove_linked_list_elements.md)
* [Binary Tree](binary_tree/README.md)
* [Binary Tree Preorder Traversal](binary_tree/binary_tree_preorder_traversal.md)
* [Binary Tree Inorder Traversal](binary_tree/binary_tree_inorder_traversal.md)
* [Binary Tree Postorder Traversal](binary_tree/binary_tree_postorder_traversal.md)
* [Binary Tree Level Order Traversal](binary_tree/binary_tree_level_order_traversal.md)
* [Binary Tree Level Order Traversal II](binary_tree/binary_tree_level_order_traversal_ii.md)
* [Maximum Depth of Binary Tree](binary_tree/maximum_depth_of_binary_tree.md)
* [Balanced Binary Tree](binary_tree/balanced_binary_tree.md)
* [Binary Tree Maximum Path Sum](binary_tree/binary_tree_maximum_path_sum.md)
* [Lowest Common Ancestor](binary_tree/lowest_common_ancestor.md)
* [Invert Binary Tree](binary_tree/invert_binary_tree.md)
* [Diameter of a Binary Tree](binary_tree/diameter_of_a_binary_tree.md)
* [Construct Binary Tree from Preorder and Inorder Traversal](binary_tree/construct_binary_tree_from_preorder_and_inorder_traversal.md)
* [Construct Binary Tree from Inorder and Postorder Traversal](binary_tree/construct_binary_tree_from_inorder_and_postorder_traversal.md)
* [Subtree](binary_tree/subtree.md)
* [Binary Tree Zigzag Level Order Traversal](binary_tree/binary_tree_zigzag_level_order_traversal.md)
* [Binary Tree Serialization](binary_tree/binary_tree_serialization.md)
* [Binary Search Tree](binary_search_tree/README.md)
* [Insert Node in a Binary Search Tree](binary_search_tree/insert_node_in_a_binary_search_tree.md)
* [Validate Binary Search Tree](binary_search_tree/validate_binary_search_tree.md)
Expand All @@ -113,18 +160,24 @@
* [Exhaustive Search](exhaustive_search/README.md)
* [Subsets](exhaustive_search/subsets.md)
* [Unique Subsets](exhaustive_search/unique_subsets.md)
* [Permutation](exhaustive_search/permutation.md)
* [Unique Permutations](exhaustive_search/unique_permutations.md)
* [Permutations](exhaustive_search/permutations.md)
* [Unique Permutations](exhaustive_search/permutations_ii.md)
* [Next Permutation](exhaustive_search/next_permutation.md)
* [Previous Permuation](exhaustive_search/previous_permuation.md)
* [Unique Binary Search Trees II](exhaustive_search/unique_binary_search_trees_ii.md)
* [Permutation Index](exhaustive_search/permutation_index.md)
* [Permutation Index II](exhaustive_search/permutation_index_ii.md)
* [Permutation Sequence](exhaustive_search/permutation_sequence.md)
* [Unique Binary Search Trees II](exhaustive_search/unique_binary_search_trees_ii.md)
* [Palindrome Partitioning](exhaustive_search/palindrome_partitioning.md)
* [Combinations](exhaustive_search/combinations.md)
* [Combination Sum](exhaustive_search/combination_sum.md)
* [Combination Sum II](exhaustive_search/combination_sum_ii.md)
* [Minimum Depth of Binary Tree](exhaustive_search/minimum_depth_of_binary_tree.md)
* [Word Search](exhaustive_search/word_search.md)
* [Dynamic Programming](dynamic_programming/README.md)
* [Triangle](dynamic_programming/triangle.md)
* [Backpack](dynamic_programming/backpack.md)
* [Backpack II](dynamic_programming/backpack_ii.md)
* [Minimum Path Sum](dynamic_programming/minimum_path_sum.md)
* [Unique Paths](dynamic_programming/unique_paths.md)
* [Unique Paths II](dynamic_programming/unique_paths_ii.md)
Expand All @@ -142,9 +195,67 @@
* [Best Time to Buy and Sell Stock IV](dynamic_programming/best_time_to_buy_and_sell_stock_iv.md)
* [Distinct Subsequences](dynamic_programming/distinct_subsequences.md)
* [Interleaving String](dynamic_programming/interleaving_string.md)
* [Maximum Subarray](dynamic_programming/maximum_subarray.md)
* [Maximum Subarray II](dynamic_programming/maximum_subarray_ii.md)
* [Longest Increasing Continuous subsequence](dynamic_programming/longest_increasing_continuous_subsequence.md)
* [Longest Increasing Continuous subsequence II](dynamic_programming/longest_increasing_continuous_subsequence_ii.md)
* [Egg Dropping Puzzle](dynamic_programming/egg_dropping_puzzle.md)
* [Maximal Square](dynamic_programming/maximal_square.md)
* [Graph](graph/README.md)
* [Find the Connected Component in the Undirected Graph](graph/find_the_connected_component_in_the_undirected_graph.md)
* [Route Between Two Nodes in Graph](graph/route_between_two_nodes_in_graph.md)
* [Topological Sorting](graph/topological_sorting.md)
* [Word Ladder](graph/word_ladder.md)
* [Bipartial Graph Part I](graph/bipartial_graph_part_i.md)
* [Data Structure](data_structure/README.md)
* [Implement Queue by Two Stacks](data_structure/implement_queue_by_two_stacks.md)
* [Min Stack](data_structure/min_stack.md)
* [Sliding Window Maximum](data_structure/sliding_window_maximum.md)
* [Longest Words](data_structure/longest_words.md)
* [Heapify](data_structure/heapify.md)
* [Kth Smallest Number in Sorted Matrix](data_structure/kth_smallest_number_in_sorted_matrix.md)
* [Problem Misc](problem_misc/README.md)
* [Nuts and Bolts Problem](problem_misc/nuts_and_bolts_problem.md)
* [String to Integer](problem_misc/string_to_integer.md)
* [Insert Interval](problem_misc/insert_interval.md)
* [Merge Intervals](problem_misc/merge_intervals.md)
* [Minimum Subarray](problem_misc/minimum_subarray.md)
* [Matrix Zigzag Traversal](problem_misc/matrix_zigzag_traversal.md)
* [Valid Sudoku](problem_misc/valid_sudoku.md)
* [Add Binary](problem_misc/add_binary.md)
* [Reverse Integer](problem_misc/reverse_integer.md)
* [Gray Code](problem_misc/gray_code.md)
* [Find the Missing Number](problem_misc/find_the_missing_number.md)
* [N Queens](problem_misc/n_queens.md)
* [N Queens II](problem_misc/n_queens_ii.md)
* [Minimum Window Substring](problem_misc/minimum_window_substring.md)
* [Continuous Subarray Sum](problem_misc/continuous_subarray_sum.md)
* [Continuous Subarray Sum II](problem_misc/continuous_subarray_sum_ii.md)
* [Longest Consecutive Sequence](problem_misc/longest_consecutive_sequence.md)
* [Part III - Contest](part_iii_contest/README.md)
* [Google APAC](google_apac/README.md)
* [APAC 2015 Round B](google_apac/google_apac_2015_round_b/README.md)
* [Problem A. Password Attacker](google_apac/google_apac_2015_round_b/problem_a_password_attacker.md)
* [APAC 2016 Round D](google_apac/google_apac_2016_round_d/README.md)
* [Problem A. Dynamic Grid](google_apac/google_apac_2016_round_d/problem_a_dynamic_grid.md)
* [Microsoft](microsoft/README.md)
* [Microsoft 2015 April](microsoft/mstest2015april/README.md)
* [Problem A. Magic Box](microsoft/mstest2015april/problem_a_magic_box.md)
* [Problem B. Professor Q's Software](microsoft/mstest2015april/problem_b_professor_qs_software.md)
* [Problem C. Islands Travel](microsoft/mstest2015april/problem_c_islands_travel.md)
* [Problem D. Recruitment](microsoft/mstest2015april/problem_d_recruitment.md)
* [Microsoft 2015 April 2](microsoft/mstest2015april2/README.md)
* [Problem A. Lucky Substrings](microsoft/mstest2015april2/problem_a_lucky_substrings.md)
* [Problem B. Numeric Keypad](microsoft/mstest2015april2/problem_b_numeric_keypad.md)
* [Problem C. Spring Outing](microsoft/mstest2015april2/problem_c_spring_outing.md)
* [Microsoft 2015 September 2](microsoft/mstest2015sept2/README.md)
* [Problem A. Farthest Point](microsoft/mstest2015sept2/problem_a_farthest_point.md)
* [Appendix I Interview and Resume](appendix_i_interview_and_resume/README.md)
* [Interview](appendix_i_interview_and_resume/interview.md)
* [Resume](appendix_i_interview_and_resume/resume.md)
* [Appendix II System Design](appendix_ii_system_design/README.md)
* [The System Design Process](appendix_ii_system_design/the_system_design_process.md)
* [Statistics](appendix_ii_system_design/statistics.md)
* [System Architecture](appendix_ii_system_design/system_architecture.md)
* [Scalability](appendix_ii_system_design/scalability.md)

6 changes: 6 additions & 0 deletions en/string/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
# String

String related topics are discussed in this chapter.

> **Note**
In order to re-use most of the memory of an existing data structure, internal implementation of string is immutable in most programming languages(Java, Python). Take care if you want to modify character in place.

0 comments on commit 223b57f

Please sign in to comment.