本周学习内容较多,主要讲了两个方面:html
虽然都是用于实现栈,但本次的学期又跟之前不太同样的,在上学期中咱们是利用JavaAPI中自带的栈类stack
来解决本身的各种问题,但本次咱们咱们须要本身来编写如何栈类,深刻内部,了解更多。java
咱们先写出了一个接口StackADT
后面的两个实现方法都实现了这个接口。git
ArrayStack
首先实现接口StackADT
分别重写push
、pop
、peek
、isEmpty
、size
方法。LindedStack
首先实现接口StackADT
分别重写push
、pop
、peek
、isEmpty
、size
方法。两个实现方法差异很是小,不过利用链式结构有一个特别大的优点就是在push
操做时不须要像数组通常遍历全部的元素。数组
其余的一些内容包括但不限于:数据结构
问题1解决方案:在网上查到了相关的知识Java中双向链表详解及实例以后了解实现方法和其重要的知识:双向链表是一种对称结构,它克服了单链表上指针单向性的缺点,其中每个节点便可向前引用,也可向后引用,这样能够更方便的插入、删除数据元素。架构
因为双向链表须要同时维护两个方向的指针,所以添加节点、删除节点时指针维护成本更大;但双向链表具备两个方向的指针,所以能够向两个方向搜索节点,所以双向链表在搜索节点、删除指定索引处节点时具备较好的性能。性能
问题2解决方案:Java异常简介及其架构:Java异常是Java提供的一种识别及响应错误的一致性机制。
Java异常机制可使程序中异常处理代码和正常业务代码分离,保证程序代码更加优雅,并提升程序健壮性。在有效使用异常的状况下,异常能清晰的回答what, where, why这3个问题:异常类型回答了“什么”被抛出,异常堆栈跟踪回答了“在哪“抛出,异常信息回答了“为何“会抛出。学习
ArrayStack
写LindedStack
时觉得只须要将top稍微改一改就好,结果发现有问题。LindedStack
,感谢他的帮助错题1及缘由:眼瞎
.net
错题2及缘由:计算错误
错题3及缘由:难道2n比n的平方阶次还高吗...
理解状况:不太懂
错题4及缘由:单词理解错误
理解状况:并非eliminating而是忽略
忽略
ignore
错题5及缘由:我记得我选的是True啊...
代码行数(新增/累积) | 博客量(新增/累积) | 学习时间(新增/累积) | 重要成长 | |
---|---|---|---|---|
目标 | 5000行 | 30篇 | 400小时 | |
第一周 | 0/5000 | 2/2 | 8/8 | 认真学习!积极向上 |
第二周 | 812/812 | 1/3 | 22/30 |
计划学习时间:20小时
实际学习时间:22小时
改进状况:根据学姐要求改进博客