博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
学习笔记【第五章】
阅读量:6638 次
发布时间:2019-06-25

本文共 935 字,大约阅读时间需要 3 分钟。

Part.A 小结&感悟

  想起来在这个学期开始前认识的一个学长曾经对我说过,你们下学期会学到一个叫做二叉树的东西,当年我可是饱受折磨啊……

  学习之前一直以为是很难理解的一个东西,但是现在发现这一章的知识总体来看非常条理和具体,同时二叉树的数据结构本身确实是存在其难理解的地方的,对于这一章中屡屡出现的递归算法,我总是需要花费大量的时间才能够理解,在想明白之后又开始对人类的智慧产生浓浓的敬佩…

       关于这里大量的概念和术语,我这里简单做了一点整理,

 

Part B 反思&计划

  在整理知识结构的过程中也顺便回想了一遍这些知识和概念,其实这些都是最最基础的东西,只要理解了就很容易记住,想学好这部分的内容还是需要大量的编程练习,熟练地实现对应的算法,然后加强对于递归算法的理解和运用能力。

  这一章我印象很深刻的编程题目,深入虎穴,老师上课也进行了详细的讲解,我最开始的想法也是构造二维数组,但是这样的算法造成了极大的空间浪费(可以利用类似稀疏矩阵的算法节省空间)这是我没有考虑到的,一个好的程序需要有优秀的空间利用能力,实现效率的最大化,这道题目是一道看似不难实则不容易实现的题目,这也是我的一个问题,光有想法是不行的,需要每一步都能对应实现,就像这道题,在真正上手编程之后屡屡卡住,以后要更加注意思路的梳理。也暴露出我对前面所学知识的综合利用能力还不强(完全没想到利用稀疏矩阵……)

  遗憾的是,我最终没能独立完成这道题的编程,以后还会回头再来多回顾这道题目的。

             

Part C   一些想法&疑问

  这是我随手写的一个小小的递归算法

1  void GoThrough(Node T)   2  {3      if(!EmptyTree T) break;   //EmptyTree 判断树是否为空4      GoThrough(T.Lchild);5      GoThrough(T.Rchild);6  }

  那么如果把3、4行的内容对换,会造成什么样的影响,谢谢老师的解答(我在对递归算法的理解上始终不通顺,希望老师别介意问题太低级了哈哈哈)

 

转载于:https://www.cnblogs.com/52Herz/p/10810121.html

你可能感兴趣的文章
浅析Xilinx 三速以太网MAC IP核(仿真篇)
查看>>
(转)Fidder教程
查看>>
UNREFERENCE_PARAMETER
查看>>
Linux -RAID
查看>>
OC中Foundation框架
查看>>
UIImageView
查看>>
spring boot&&cloud干货系列
查看>>
2012-06-25 基本调整数据库结构方法
查看>>
用Markdown格式写一份前端简历
查看>>
第二次作业
查看>>
Windows API编程(一)完整的示范程序
查看>>
JAVA EE:第一个例子(登录)
查看>>
前端Js框架汇总
查看>>
LINUX 配置IP
查看>>
常用的CSS3 -webkit-前缀
查看>>
VMware 虚拟化编程(13) — VMware 虚拟机的备份方案设计
查看>>
Linux常用命令整理
查看>>
数据的间距问题(重载+函数模板)
查看>>
利用Python实现从百度下载图片到本地磁盘
查看>>
ubuntu18.04安装mac主题
查看>>