diff --git a/readme.md b/readme.md
index 8f92e67b..4d908eda 100644
--- a/readme.md
+++ b/readme.md
@@ -1,418 +1 @@
-We are accepting all pull requests. [Read More](https://github.com/AllAlgorithms/algorithms/issues/40)
-
-
-
-## See
-
-- [What is an algorithm](#what-is-an-algorithm)
-- [Contributing](https://github.com/AllAlgorithms/algorithms/blob/master/.github/contributing.md)
-- [Code of Conduct](https://github.com/AllAlgorithms/algorithms/blob/master/.github/code-of-conduct.md)
-- [Stickers and T-Shirts](https://www.redbubble.com/people/abranhe/works/34285088)
-- [Twitter](https://twitter.com/AllAlgorithms)
-- [Instagram](https://instagram.com/AllAlgorithms)
-- [Algorithms Categories](#categories)
-- [Maintainers](#maintainers)
-- [License](#license)
-
-
-## What is an algorithm?
-
-Informally, an algorithm is any well-defined computational procedure that takes
-some value, or set of values, as input and produces some value, or set of values, as
-output. An algorithm is thus a sequence of computational steps that transform the
-input into the output.
-
-An algorithm should have three important characteristics to be considered valid:
-
-- **It should be finite**: If your algorithm never ends trying to solve the problem
-it was designed to solve then it is useless
-- **It should have well defined instructions**: Each step of the algorithm has to
-be precisely defined; the instructions should be unambiguously specified for each case.
-- **It should be effective**: The algorithm should solve the problem it was designed
-to solve. And it should be possible to demonstrate that the algorithm converges with
-just a paper and pencil.
-
-## Categories
-
-> Structure of The All â–²lgoritms project
-
-- [Artificial Intelligence](#artificial-intelligence)
-- [Backtracking](#backtracking)
-- [Bit Manipulation](#bit-manipulation)
-- [Cellular Automaton](#cellular-automaton)
-- [Ciphers](#ciphers)
-- [Computational Geometry](#computational-geometry)
-- [Cryptography](#cryptography)
-- [Data Structures](#data-structures)
-- [Divide and conquer](#divide-and-conquer)
-- [Dynamic Programming](#dynamic-programming)
-- [Gaming Theory](#gaming-theory)
-- [Graphs](#graphs)
-- [Greedy Algorithms](#greedy-algorithms)
-- [Math](#math)
-- [Networking](#networking)
-- [Numerical Analysis](#numerical-analysis)
-- [Operating system](#operating-system)
-- [Randomized Algorithms](#randomized-algorithms)
-- [Searches](#searches)
-- [Selections Algorithms](#selections-algorithms)
-- [Sorting](#sorting)
-- [Strings](#strings)
-- [Online Challenges](#online-challenges)
-- [Others](#others)
-
-## [Artificial Intelligence](artificial-intelligence)
-
-- [Density-based spatial clustering of applications with noise (DBSCAN Clustering)](https://allalgorithms.com/docs/dbscan)
-- [Interactive Self-Organizing Data Analysis Technique yAy! (ISODATA Clustering)](https://allalgorithms.com/docs/isodata)
-- [Linear Regression](https://allalgorithms.com/docs/linear-regression)
-- [Logistic Regression](https://allalgorithms.com/docs/logistic-regression)
-- [Neutral Style Transfer](https://allalgorithms.com/docs/neutral-style-transfer)
-- [SATisfiable (SAT)](https://allalgorithms.com/docs/sat)
-- [Travelling salesman problem (TSP)](https://allalgorithms.com/docs/tsp)
-- [A* (A Star)](https://allalgorithms.com/docs/a-star)
-- [Artificial Neutral Network](https://allalgorithms.com/docs/artificial-neutral-network)
-- [Convolutional Neutral Network](https://allalgorithms.com/docs/convolutional-neutral-network)
-- [Decision Tree](https://allalgorithms.com/docs/decision-tree)
-- [Factorization Machines](https://allalgorithms.com/docs/factorization-machines)
-- [Gaussian Mixture Model](https://allalgorithms.com/docs/gaussian-mixtrue-model)
-- [Gradient Boosting Trees](https://allalgorithms.com/docs/gradient-boostring-trees)
-- [Hierachical Clustering](https://allalgorithms.com/docs/hierachical-clustering)
-- [Image Processing](https://allalgorithms.com/docs/image-processing)
-- [K Nearest Neighbors](https://allalgorithms.com/docs/k-nearest-neighbors)
-- [K Means](https://allalgorithms.com/docs/k-means)
-- [Minimax](https://allalgorithms.com/docs/minimax)
-- [Native Bayes](https://allalgorithms.com/docs/native-bayes)
-- [Nearest Sequence Memory](https://allalgorithms.com/docs/nearest-sequence-memory)
-- [Neutral Network](https://allalgorithms.com/docs/neutral-network)
-- [Perceptron](https://allalgorithms.com/docs/perceptron)
-- [Principal Component Analysis](https://allalgorithms.com/docs/principal-component-analysis)
-- [Q Learing](https://allalgorithms.com/docs/q-learning)
-- [Random Forests](https://allalgorithms.com/docs/random-forest)
-- [Restricted Boltzman Machine](https://allalgorithms.com/docs/restricted-boltzman-machine)
-
-## [Backtracking](backtracking)
-
-- [Algorithm X](backtracking/algorithm-x)
-- [Crossword Puzzle](backtracking/crossword-Puzzle)
-- [Knight Tour](backtracking/knight-tour)
-- [M Coloring Problem](backtracking/m-coloring-problem)
-- [N Queen](backtracking/n-queen)
-- [Number of ways in Maze](backtracking/number-of-ways-in-maze)
-- [Partitions of set](backtracking/partitions-of-set)
-- [Permutation of Strings](backtracking/permutation-of-strings)
-- [Powerset](backtracking/powerset)
-- [Rat in maze](backtracking/rat-in-maze)
-- [Subset Sum](backtracking/subset-sum)
-- [Sudoku Solve](backtracking/sudoku-solve)
-
-## [Bit Manipulation](bit-manipulation)
-
-- [Addition using bits](bit-manipulation/adding-using-bits)
-- [Bit divisor](bit-manipulation/bit-divisor)
-- [Byte swapper](bit-manipulation/byte-swapper)
-- [Convert numbers to binary](bit-manipulation/convert-numbers-to-binary)
-- [Count set bits](bit-manipulation/count-set-bits)
-- [Flip bits](bit-manipulation/flip-bits)
-- [Hamming distance](bit-manipulation/hamming-distace)
-- [Invert bit](bit-manipulation/invert-bit)
-- [Lonely integer](bit-manipulation/lonely-integer)
-- [Magic Number](bit-manipulation/magic-number)
-- [Maximum XOR Value](bit-manipulation/maximun-xor-value)
-- [Power of 2](bit-manipulation/power-of-2)
-- [Subset Generation](bit-manipulation/subset-generation)
-- [Sum binary numbers](bit-manipulation/sum-binary-numbers)
-- [Sum equals XOR](bit-manipulation/sum-equals-xor)
-- [Thrice unique number](bit-manipulation/thrice-unique-number)
-- [Twice unique number](bit-manipulation/twice-unique-number)
-- [XOR Swap](bit-manipulation/xor-swap)
-
-## [Cellular Automaton](cellular-automaton)
-
-- [Brians Brain](cellular-automaton/brians-brain)
-- [Conways Game of life](cellular-automaton/conways-game-of-life)
-- [Elementary Cellular Automata](cellular-automaton/elementary-cellular-automata)
-- [Generic Algorithm](cellular-automaton/generic-algorithm)
-- [Langtons Ant](cellular-automaton/langtons-ant)
-- [Nobili Cellular Automata](cellular-automaton/nobili-cellular-automata)
-- [Von Neoumann Cellular Automata](cellular-automaton/von-neoumann-cellular-automata)
-
-## [Computational Geometry](computational-geometry)
-
-- [2D Line intersection](computational-geometry/)
-- [2D Separating Axis test](computational-geometry/)
-- [Area of polygon](computational-geometry/)
-- [Area of triangle](computational-geometry/)
-- [Axis aligned bounding box collision](computational-geometry/)
-- [Bresenham Line](computational-geometry/)
-- [Chans Algorithm](computational-geometry/)
-- [Cohen Sutherland Lineclip](computational-geometry/)
-- [Distance between points](computational-geometry/)
-- [Graham Scan](computational-geometry/)
-- [Halfplane intersection](computational-geometry/)
-- [Jarvis March](computational-geometry/)
-- [Quickull](computational-geometry/)
-- [Sphere tetrahedron intersection](computational-geometry/)
-- [Sutherland Hodgeman clipping](computational-geometry/)
-
-## [Cryptography](cryptography)
-
-- [Affine Cipher](cryptography/)
-- [Atbash Cipher](cryptography/)
-- [Autokey Cipher](cryptography/)
-- [Baconian Cipher](cryptography/)
-- [Caesar Cipher](cryptography/)
-- [Colummnar Cipher](cryptography/)
-- [Vigenere Cipher](cryptography/)
-
-## [Data Structures](data-structures)
-
-- [Bag](data-structures/bag/)
-- [Hashes](data-structures/hashes/)
-- [Linked List](data-structures/linked-list/)
-- [List](data-structures/list/)
-- [Queue](data-structures/queue/)
-- [Stack](data-structures/stack/)
-- [Tree](data-structures/tree/)
-
-## [Divide and conquer](divide-and-conquer)
-
-- [Strassen Matrix Manipulation](divide-and-conquer/)
-- [Closest Pair of Point](divide-and-conquer/)
-- [Inversion Count](divide-and-conquer/)
-- [Karatsuba Multiplication](divide-and-conquer/)
-- [Maximum Contiguous subsequence sum](divide-and-conquer/)
-- [Merge Sort using divide and conquer](divide-and-conquer/)
-- [Quick Sort using divide and conquer](divide-and-conquer/)
-- [Tournament Method to find min max](divide-and-conquer/)
-- [Warnock Algorithm](divide-and-conquer/)
-- [X Power Y](divide-and-conquer/)
-
-## [Dynamic Programming](dynamic-programming)
-
-- [Array Median](dynamic-programming)
-- [Optima Binary Search Tree](dynamic-programming)
-- [Binomial Coefficient](dynamic-programming)
-
-## [Gaming Theory](gaming-theory)
-
-- [Nim Next Best Move Game](gaming-theory/)
-- [Nim Win Loss Game](gaming-theory/)
-- [Grundy Numbers Kayle Game](gaming-theory/)
-
-## [Graphs](graphs)
-
-- [Bipartite Check](graphs/)
-- [Adjacency Lists graphs representation](graphs/)
-- [A* (A Star)](https://allalgorithms.com/docs/a-star)
-
-## [Greedy Algorithms](greedy-algorithms)
-
-- [Activity Selection](greedy-algorithms)
-- [Dijkstra Shortest Path](greedy-algorithms)
-- [Egyptian Fraction](greedy-algorithms)
-
-## [Math](math)
-
-- [2 Sum](math/)
-- [Add Polynomials](math/)
-- [Amicable Numbers](math/)
-- [Armstrong Numbers](math/)
-- [Automorphic Numbers](math/)
-- [Average Stream Numbers](math/)
-- [Babylonian Method](math/)
-- [Binomial Coefficient](math/)
-- [Catalan Number](math/)
-- [Check is Square](math/)
-- [Convolution](math/)
-- [Coprime Numbers](math/)
-- [Count Digits](math/)
-- [Count Trailing Zeroes](math/)
-- [Decoding of String](math/)
-- [Delannoy Number](math/)
-- [Derangements](math/)
-- [DFA Division](math/)
-- [Diophantine](math/)
-- [Divided Differences](math/)
-- [Euler Totient](math/)
-- [Exponentiation Power](math/)
-- [Factorial](math/factorial)
-- [Fast Fourier transform](math/)
-- [Fast inverse (sqrt) Square Root](math/)
-
-## [Networking](networking)
-
-- [Packet Sniffer](networking/)
-- [Determine Endianess](networking/)
-- [Validate IP](networking/)
-
-## [Numerical Analysis](numerical-analysis)
-
-- [Integral](numerical-analysis/integral)
-- [Monte Carlo](numerical-analysis/monte-carlo)
-- [Runge Kutt](numerical-analysis/runge-kutt)
-
-## [Operating system](operating-system)
-
-- [Currency](operating-system/)
-- [Deadlocks](operating-system/)
-- [Memory Management](operating-system/)
-- [Scheduling](operating-system/)
-- [Shell](operating-system/)
-
-## [Randomized Algorithms](randomized-algorithms)
-
-- [Birthday Paradox](randomized-algorithms)
-- [Karger Minimum Cut Algorithm](randomized-algorithms)
-- [Kth Smallest Element Algorithm](randomized-algorithms)
-- [Random from Stream](randomized-algorithms)
-- [Random Node Linked list](randomized-algorithms)
-- [Randomized Quicksort](randomized-algorithms)
-- [Reservoir Sampling](randomized-algorithms)
-- [Shuffle an Array](randomized-algorithms)
-
-## [Searches](searches)
-
-- [Binary Search](searches)
-- [Exponential Search](searches)
-- [Fibonacci Search](searches)
-- [Fuzzy Search](searches)
-- [Interpolation Search](searches)
-- [Jump Search](searches)
-- [Linear Search](searches)
-- [Ternay Search](searches)
-- [Jump Search](searches)
-- [Fibonacci Search](searches)
-
-## [Selections Algorithms](selections-algorithms)
-
-- [Median of Medians](selections-algorithms)
-- [Quick Select](selections-algorithms)
-
-## [Sorting](sorting)
-
-- [Bead Sort](sorting/)
-- [Bogo Sort](sorting/)
-- [Bubble Sort](sorting/)
-- [Bucket Sort](sorting/)
-- [Circle Sort](sorting/)
-- [Comb Sort](sorting/)
-- [Counting Sort](sorting/)
-- [Cycle Sort](sorting/)
-- [Flash Sort](sorting/)
-- [Gnome Sort](sorting/)
-- [Heap Sort](sorting/)
-- [Insertion Sort](sorting/)
-- [Intro Sort](sorting/)
-- [Median Sort](sorting/)
-- [Merge Sort](sorting/)
-- [Pipeonhole Sort](sorting/)
-- [Quick Sort](sorting/)
-- [Radix Sort](sorting/)
-- [Selection Sort](sorting/)
-- [Shaker Sort](sorting/)
-- [Shell Sort](sorting/)
-- [Sleep Sort](sorting/)
-- [Stooge Sort](sorting/)
-- [Topological Sort](sorting/)
-- [Tree Sort](sorting/)
-
-## [Strings](strings)
-
-- [Aho Corasick Algorithm](strings)
-- [Anagram Search](strings)
-- [Arithmetic on large numbers](strings)
-- [Boyer Moore Algorithm](strings)
-- [Finite Automata](strings)
-- [Kasai Algorithm](strings)
-- [Kmp Algorithm](strings)
-- [Levenshteing Distance](strings)
-- [Lipogram Checker](strings)
-
-## [Online Challenges](online-challenges)
-
-- [Coderbyte](online-challenges/coderbyte)
-- [Code Chef](online-challenges/code-chef)
-- [Code Eval](online-challenges/code-eval)
-- [Hackerearth](online-challenges/hackerearth)
-- [Hackerrank](online-challenges/hackerrank)
-- [LeetCode](online-challenges/leetcode)
-- [Project Euler](online-challenges/project-euler)
-- [Rosalind](online-challenges/rosalind)
-- [SPOJ](online-challenges/spoj)
-- [Top Coder](online-challenges/top-coder)`
-
-## [Others](others)
-
-- [Average](others/)
-- [Biggest of n numbers](others/)
-- [Biggest Suffix](others/)
-- [Fifteen Puzzle](others/)
-- [Jaccard Similarity](others/)
-- [Jose Phus Problem](others/)
-- [Lapindrom Checker](others/)
-- [Leap Year](others/)
-- [Magic Square](others/)
-- [Majority Element](others/)
-- [Minimum subarray size with degree](others/)
-- [No operator addition](others/)
-- [Paint fill](others/)
-- [Split list](others/)
-- [Tokenizer](others/)
-- [Unique number](others/)
-
-## License
-
-This work is released under MIT License.
-
-To the extent possible under law, [Abraham Hernandez (@abranhe)](https://go.abranhe.com/github) has waived all copyright and related or neighboring rights to this work.
-
-
\ No newline at end of file
+this file contain updated description