In many types of program design, the choice of data structure is a fundamental design consideration. The configuration experience of many large system shows that the difficulty to achieve and the quality of system configuration heavily depend on whether select an optimum data structure. In many cases, the algorithm is easy to get after the data structure is determined. Sometimes things will turn. We’d better to choose a data structure according to a specific algorithm and adapt to it. In either case, it’s very important to select a appropriate data structure.
There are some common data structures:
1. Tree
2. Stack
3. Array
4. Queue
5. Graph
And there are some common sorting algorithms:
1. Quick Sort
2. Bubble Sort
3. Merge Sort
4. Insertion Sort
5. Radix Sort
6. Selection Sort
After selected data structure, the algorithm is determined as well. The key factor of system construction is data, not algorithms. This insight leads to the emergence of many kinds of software design methods and programming design languages. Object-oriented programming language is one of them. Object-oriented programming is “a type of programming in which programmers define not only the data type of a data structure, but also the types of operations (functions) that can be applied to the data structure. In this way, the data structure becomes an object that includes both data and functions. In addition, programmers can create relationships between one object and another.” (Object-oriented programming)
References:
“Data Structure.” http://en.wikipedia.org/wiki/Data_structure
“Object-oriented programming.” http://www.webopedia.com/TERM/O/object_oriented_programming_OOP.html
Hello Wenlong Zhang,
ReplyDeleteYour blog post about Data Structure is very visual and informative. You have covered almost all of the important key points about Data Structures. Two things I like the most about your post is the images that you used, and the hyperlinks that you have chosen for the post. First, the images that you have used in your post really emphasize your main argument in the post. Especially the image of the tree with binary codes in it stands out. Secondly, I like all of the hyperlinks that you have chosen for the post. All of them lead to the good introductory tutorial about the data structures or algorithms. Overall, I really enjoyed reading this post.
Keep blogging!
Hi Wenlong,
ReplyDeleteIt is really a great experience reading your blog, it is well organized and visually comfortable. You have introduced the basic elements in data structure and related algorithms in clear bullets, I was able to follow the links and references to find what was confusing in my mind. You have also related the data structure with object oriented programing, I think it is pretty helpful.
There's a minor typo though, "a appropriate data structure" should be "an appropriate data structure".
Thanks for your work!