code-for-fun-blog
code-for-fun-blog
Code Heaven
9 posts
Don't wanna be here? Send us removal request.
code-for-fun-blog · 9 years ago
Text
Week 11 Reflection
     Time flies, I cannot believe that we come to the end of semester this fast. Compared to the previous week, I feel like I have a more profound understanding of linked list. During week 4, linked list was exposed to me for the first time. At that time, I was totally clueless about this new field. The only idea about it was this is a more advanced version of built-in list. It is faster to delete items from or add new items to itself. However, I have no idea about why. The reason was mysterious back to few weeks before.
     Nevertheless, after assignment 2 and many other practice, I have a deeper insight into it. Basically, constructing a linked list is equal to setting up reference between different nodes. A complete linked list is actually a track from the first node in the list to the last one. Each node points to the other one until none left. In this way, we do not need to store all the items contiguously since we built reference for all of them, which is different from built-in list. This structure is also the reason that manipulation such as inserting or removing can be acted on linked list much more easily. However, there are also some disadvantages coming with this structure. For example, linked list uses more memory since it needs to store all its pointers. Also because of the way it stores its nodes, it takes more time to access to individual item inside the list.
     Besides, I found both tree and binary tree are the mutation of linked list. The only difference is linked list has only one pointer for each node, while the other two have more. The basic concept is very similar here. In assignment 2, we were asked to find the solution, which is a node, to given puzzle. That solution node is exactly a doubly linked list with reference both sides. 
     In a nutshell, linked list is all about reference(pointer). Once all the pointers are set up, a linked list is constructed. 
0 notes
code-for-fun-blog · 9 years ago
Text
Week 10 refelection
     We finished binary tree this week and begin to talk about big O notation. We learned about different algorithm and compared their efficiency. A good algorithm can make a program run much faster than others. 
0 notes
code-for-fun-blog · 9 years ago
Text
Week 9 Reflection
    This week we practice more about binary tree. Using recursion to implement more methods. Some important parts are search tools, such as post-order search, level-order search etc..   
0 notes
code-for-fun-blog · 9 years ago
Text
Week 8 reflection
       We started to learn tree and binary tree this week. With a strong base of recursion knowledge, it is not hard to handle this part. The most important and difficult part is binary tree search in my opinion. I’m still working hard on it to get used to this concept. 
0 notes
code-for-fun-blog · 9 years ago
Text
Week 7 reflection (Recursion)
       Recently one of the main concepts we are learning is recursion. Just as I mentioned in last week slog, it is not a friendly concept for the people who have never seen it before. The most confusing part regards to it is to track the whole thing. More depth it goes into, more difficulty you need to overcome while keeping the track. In addition, I was also clueless about in which situation should we call recursion.  
       However, as the old saying goes, “Practice makes perfect.” Through the class and the lab, I saw many recursion examples and used it to complement a few functions. With all these things being done these days, I feel a little more confident about how to use it. Basically, we separate the body into two parts, base case and general case, by using if statement. In base case we return what we want and in general case we do some recursion calls. To track the whole thing, writing down each step would make it easier since tracking process is more clear in that way.  
       In a nutshell, when we need to call function self in the function, recursion need to be called. It is usually applied to complement the function with multi-depth input.
0 notes
code-for-fun-blog · 9 years ago
Text
Week 6 reflection
This week we finished linked list part and started learning recursion. New knowledge is always hard to learn. I was clueless when I first saw it on the slides, but after some practice, it’s not as difficult as how I felt at the beginning of this week. 
0 notes
code-for-fun-blog · 9 years ago
Conversation
Week 5 reflection
This week we had our term test 1 and to be honest it was kind of out of time to finish all the questions. In terms of new knowledge, we continued linked list part and I feel I can handle this part pretty well by the end of this week.
0 notes
code-for-fun-blog · 9 years ago
Text
Week 4 Reflection
       This week we learned about linked list which I found was kind of hard to understand at first. However, at the end of the week I managed to grasp what is a linked list and how it works. It’s very convenient for us to insert or delete an element to or from a linked list. It also occupies more memory than type list.
0 notes
code-for-fun-blog · 9 years ago
Text
Course impression and goals
      The very first impression of csc148 is it’s a advanced version of csc108. It enhances what we learned in 108 and adds some extra knowledge to help us improve our coding ability on python. After I saw assignment 1, I kind of feel like it is a course where we can learn something to solve the problem in our real life, which makes me very excited.  
     Speaking of goals in this course, for me, fully understanding and mastering what we will learn in the future is essential and important. Besides, it would be greater if I can actually use the knowledge from this course to make my life easier by writing some useful programs. 
     In a nutshell, I hope I will have a wonderful experience in csc148 and lay a strong foundation for my coding life. :)
1 note · View note