the common internal sorting algorithms are: Insert Sort, hill sort, select sort, bubble sort, merge sort, quick sort, heap sort, cardinality sort and so on. Summarize with a picture:
650) this.width=650; "Src=" https://s4.51cto.com/wyfs02/M02/95/36/wKioL1kSzhPh9ioxAAHcPIbdiTU597.png-wh_500x0-wm_ 3-wmp_4-s_4250855723.png "title=" 11.png "alt=" Wkiol1kszhph9ioxaahcpibditu597.png-wh_50 "/>
Select sort
Select Sort is a simple and intuitive sorting algorithm, which is the time complexity of O (N2) Regardless of what data goes in. So when it's used, the smaller the data, the better. The only advantage might be that you don't take up extra memory space. In layman's terms, who is the youngest of you, standing on the last side of the queue, and then continue to the rest of the unordered array of the smallest of you who will be out of line, stand to the last side of the queue, until the last one, continue to stand to the last side, so that the array has a sequence, from small to large.
1. Algorithm steps
-
First find the smallest (large) element in the unordered sequence, and place it at the beginning of the sort sequence
Then continue looking for the smallest (large) element from the remaining unsorted elements and place it at the end of the sorted sequence.
Repeat the second step until all the elements are sorted.
2. Dynamic Diagram Demonstration
650) this.width=650; "Src=" https://s2.51cto.com/wyfs02/M01/95/36/wKiom1kSzqbgjq4sAAAs5uKwBWE096.png-wh_500x0-wm_ 3-wmp_4-s_68824875.png "title=" 12.png "alt=" Wkiom1kszqbgjq4saaas5ukwbwe096.png-wh_50 "/>
3. JavaScript Code implementation
650) this.width=650; "Src=" https://s1.51cto.com/wyfs02/M02/95/36/wKioL1kSzvXDvWCcAABkqxEcOHU539.png-wh_500x0-wm_ 3-wmp_4-s_3817114358.png "title=" 13.png "alt=" Wkiol1kszvxdvwccaabkqxecohu539.png-wh_50 "/>
4. Python Code implementation
650) this.width=650; "Src=" https://s3.51cto.com/wyfs02/M00/95/36/wKioL1kSzzmBN3mNAAAlY8bJ2D0968.png-wh_500x0-wm_ 3-wmp_4-s_881031340.png "title=" 14.png "alt=" Wkiol1kszzmbn3mnaaaly8bj2d0968.png-wh_50 "/>
5. Java Implement
650) this.width=650; "Src=" https://s5.51cto.com/wyfs02/M02/95/36/wKiom1kSz2Wi2DsbAABtumKWm4Q050.png-wh_500x0-wm_ 3-wmp_4-s_305742250.png "title=" 15.png "alt=" Wkiom1ksz2wi2dsbaabtumkwm4q050.png-wh_50 "/>
6. Go Code Implementation
650) this.width=650; "Src=" https://s2.51cto.com/wyfs02/M02/95/36/wKioL1kSz5WztAspAAA6XVosI18140.png-wh_500x0-wm_ 3-wmp_4-s_3900096102.png "title=" 16.png "alt=" Wkiol1ksz5wztaspaaa6xvosi18140.png-wh_50 "/>
far awayFront-end and Golang backend microservices development, architecture, and team focus on front end, client, and concurrency response. Now employed in foreign companies, technical director, Micro-service architecture. Often active in Learn the front-end direction from scratch, large front-end technology,Full stack Technology Group,Ionic2 Hybrid app development and other groups inside to do some sharing, hope that through their own influence so that the people around to feel more of the industry's residual temperature, willing to help those who need to solve the technical problems of the crowd.Please contact:Sen0676
Recently I will teach you how to learn programming skills yourself, how to write a good resume, to find the job you want. The dream starts here. Combined with my own study of the front-end to find work experience, how to learn, modular system. I will share my own how to learn the front-end, how to improve the development efficiency in practice, standardize the development process.
1, the front-end self-study and improve
2, the production and delivery of resumes
3. The skills that should be mastered in front-end interview work
4, front-end interview some problems set
5, the enterprise needs the front-end recruitment of talent, etc.
This article is from the "Technology-aware" blog, so be sure to keep this source http://liuzhiying.blog.51cto.com/5850988/1924221
JavaScript, Python,java,go Series algorithm selection sort