20162314 《Program Design & Data Structures》Learning Summary Of The Seventh Week

20162314 2017-2018-1 《Program Design & Data Structures》Learning Summary Of The Seventh Week

Summary of Key Concepts

  • A tree is a nonlinear structure whose elements are organized into a hierarchy.

  • The order of a tree specifies the maximum number of children any node in the tree may have.

  • A balanced n-ary tree with m elements will have height log n m.

  • There are four basic techniques for traversing a tree.

  • A queue can be used to store the elements of a tree during a level-order traversal.

  • One strategy for implementing binary trees using arrays places the left child of element n at position (2 n * 1) and the right child at position (2*(n + 1)).

  • A stored link strategy for an array-based tree implementation allows array positions to be allocated contiguously regardless of the completeness of the tree.

  • How elements are added to and removed from a general binary tree depends on the tree’s purpose.

  • A decision tree can be used as the basis for an expert system.

Problem and solution in teaching materials.

Compare and contrast preorder and postorder tree traversals.?

20162314 《Program Design & Data Structures》Learning Summary Of The Seventh Week
Tree traversals visit each element in the tree. The type of traversal dictates when a node is visited. A preorder traversal visits the root before visiting either subtree, and a postorder traversal visits the root after visiting both subtrees.

What are the advantages and disadvantages of implementing binary trees using computed links?

20162314 《Program Design & Data Structures》Learning Summary Of The Seventh Week
The computed link strategy does not have to store the links between a parent to child node since that relationship is determined by its position in the array. However, this strategy may
lead to substantial wasted space for trees that are not balanced and/or not complete.

What is a decision tree?

20162314 《Program Design & Data Structures》Learning Summary Of The Seventh Week
A decision tree is a tree used to represent the questions and responses that can be used to determine an appropriate conclusion. A decision tree can be used as the basis of an expert system, such as a medical diagnosis system.

What is a binary tree?

It would take two dummy records in a doubly linked list, one at the front and one at the rear, to eliminate the special cases when dealing with the first and last node.
A binary tree is a tree whose nodes can have no more than two children. Binary trees are quite useful in many problem-solving situations.

Code hosting

20162314 《Program Design & Data Structures》Learning Summary Of The Seventh Week

Summary of error for last week.

Linear search is always more effective than binary search.The answer should be false, for the situation of "n = 2".

Evaluate for my partner

  • Advantage and problem in the blog:
    • Concise and comprehensie
    • Uncleary to the content
    • Mould is amazing
  • Advantage and problem in the code:
    • Serious writing.
    • Wonderful idea
    • Too less

Learning situation of partner

  • 20162310

  • Learning content of partner:
    • Algorithm
    • Recursion
    • HanoiTowers and maze

Anything else that want to say

  • It's not easy to persere on utizing English to write a blog.But I'm getting used to doing this because of the benefit.

Academic progress check

Code line number(increasing/accumulative) Blog number(inc/acc) studying time(inc/acc) progress
target 5000lines 30articles 400hours
First week 180/180 1/1 20/20
Second week 1049/1229 1/2 18/38
Third week 1037/2266 3/7 22/60
Fourth week 1120/3386 2/9 30/90