Experiment report of Besti

course:《Program Design & Data Structures》

Class: 1623

Student Name: Wang, Yixiao

Student Number:20162314

Tutor:Mr.Lou、Mr.Wang

Experiment date:2017.9.26

Secret level: Unsecretive

Experiment time:60 minutes

Major/Elective:Major

Experiment order:5

Experiment content

  1. Linear-list test of Java :Process, Problem.
  1. Linear-list application of Java :Process, Problem.
  1. Implement ArrayList(Pseudocode, Productcode, Testcode): Process(Analysis, Design,implement,test),Problem.
  1. Implement LinkedList (Pseudocode, Productcode, Testcode): Process(Analysis, Design,implement,test),Problem.
  1. Analyze source code of ArrayList and LinkedList:Process,Skill.

Experiment situation

Exp1 Linear-list test of Java

  • It's easy to finish this experiment.
  • To start with , import to form a new Linked-list to start the experiment.
  • Next , use the method list.add() to ealuation.
  • Then , use the for-loop to test the Linked-list.add method respectively.
  • Last , export the value of three loops respectively.

Exp2 Linear-list application of Java

  • To start with , set a class by using List to creat alist and blist, make the two lists' size equally.
  • Next , use the sentence while-if, value alist(i) and blist(j)
  • If the alist(i) > blist(j) , then merge the first place with index i+j by bList.get(j)
  • Else , take the opposite.
  • Then , when the length of alist > i , merge the list with index i+j by alist.get(i)
  • while the length of blist > j , do the opposite
  • After the loops end , return the result of merging lists.
  • Last , write a test with valuing two arraylists by using list.add() and print the result.

Exp3 Implement ArrayList

  • To start with , import to form a new Array-list to start the experiment.
  • Next , write the index and the first element
  • Next , use the method list.add to make the array list.
  • Then , output and explain the fist element.
  • Then , use the method list.remove to remove a number.
  • Next , use the method list.contain to check whether the number is in list right now.
  • Then , use the for-loop and leam.iterator to print iter.next() .
  • Next , form a new String Array to print string.
  • Then , use the list.clear to clear the list number.
  • Last , use the method list.isEmpty to check whether the list is empty now.

Exp4 Implement LinkedList

  • The whole test is made of three methods:testLinkedListAPIs(),useLinkedListAsLIFO();,useLinkedListAsFIFO();
  • Then creat a class to explain this three methods.
  • import a new linkedlist
  • Next, use list.add to print
  • Then, use stack to pop and peek.
  • Next, creat a new queue
  • Use the method to add and remove ,last print.

Exp5 Analyze source code of ArrayList and LinkedList

>.
Assume when we creat a Linkedlist at the start, there is only a hearder point,as the following picture.

There is a elementA1 insert ahead the header.
Now,insert a element A2 after implementing the code as the following
Entry newEntry = new Entry(A2, header, header.previous);
//Make newEntry.next point to the header, new Entry point to header.previous(A1)
newEntry.previous.next = newEntry;
newEntry.next.previous = newEntry;
Then, the picture turn to this

Code hosting

PSP5.1(Personal Software Process)

Steps Time percent
requirement 45minutes 16.7%
design 50minutes 18.5%
coding 1.5hours 32.2%
test 30minutes 11.1%
summary 55minutes 19.2%

20162314 Experiment 1: Linear structure - experiment report.的更多相关文章

  1. PCA tries to preserve linear structure, MDS tries to preserve global geometry, and t-SNE tries to preserve topology (neighborhood structure)

    https://colah.github.io/posts/2014-10-Visualizing-MNIST/

  2. 20162314 Experiment 2 - Tree

    Experiment report of Besti course:<Program Design & Data Structures> Class: 1623 Student N ...

  3. 20162314 Experiment 4 - Graph

    Experiment report of Besti course:<Program Design & Data Structures> Class: 1623 Student N ...

  4. 20162314 Experiment 3 - Sorting and Searching

    Experiment report of Besti course:<Program Design & Data Structures> Class: 1623 Student N ...

  5. 20162314 《Program Design & Data Structures》Learning Summary Of The Eighth Week

    20162314 2017-2018-1 <Program Design & Data Structures>Learning Summary Of The Eighth Week ...

  6. cvpr2015papers

    @http://www-cs-faculty.stanford.edu/people/karpathy/cvpr2015papers/ CVPR 2015 papers (in nicer forma ...

  7. N-Gram

    N-Gram是大词汇连续语音识别中常用的一种语言模型,对中文而言,我们称之为汉语语言模型(CLM, Chinese Language Model).   中文名 汉语语言模型 外文名 N-Gram 定 ...

  8. IoT experitment

    Abstract: In order to solve the problems of complex experiment management, complicated teaching task ...

  9. 论文翻译:2021_Towards model compression for deep learning based speech enhancement

    论文地址:面向基于深度学习的语音增强模型压缩 论文代码:没开源,鼓励大家去向作者要呀,作者是中国人,在语音增强领域 深耕多年 引用格式:Tan K, Wang D L. Towards model c ...

随机推荐

  1. python 位置参数和关键字参数 *args **kwargs

    #!/usr/bin/env pythondef foo(*args,**kwargs): print('args: {0}'.format(args)) print('kwargs {0}'.for ...

  2. gattAttribute_t 含义 中文解释

    1.  gattAttribute_t   是一个结构体数据类型,里面存放了各种类型的数据. 现在 看看 TI  是怎么描述的,如下: /** * @brief GATT Attribute form ...

  3. #leetcode刷题之路38-报数

    报数序列是一个整数序列,按照其中的整数的顺序进行报数,得到下一个数.其前五项如下:1. 12. 113. 214. 12115. 1112211 被读作 "one 1" (&quo ...

  4. devise的使用

    ~ 在gemfile中加入 gem 'devise' ~ 终端输入 $ bundle install $ rails generate devise:install ~ 确保登录之后能正常跳转 在co ...

  5. 20155321 《信息安全系统设计》Linux多线程的深入学习

    再次学习之多线程 基本概念的再次学习 线程是程序执行的最小单位(进程是资源管理的最小单位),线程隶属于某个进程中 进程有自己的数据段.代码段和堆栈段.线程通常叫做轻型的进程,每个线程共享其所附属进程的 ...

  6. 用matplotlib获取雅虎股票数据并作图

    matplotlib有一个finance子模块提供了一个获取雅虎股票数据的api接口:quotes_historical_yahoo_ochl 感觉非常好用! 示例一 获取数据并作折线图 import ...

  7. 1. [文件]- 文件类型,文件open模式

    1.文件类型:文本文件和二进制文件 硬盘中的文件保存为01010101格式,一般读取文件是把文件从硬盘中读取到内存中. 文本文件需要进行格式转换才能读取出来. 二进制文件一般用于传输 二进制文件:视频 ...

  8. html5 初试 indexedDB

    indexedDB是存储大量结构化数据的API,demo中用到的是异步API,麻烦的就是所有对indexedDB的操作都会发生一个异步的‘请求’,只要熟悉了API操作起来也很简单. http://ww ...

  9. Html.RenderPartial与Html.RenderAction的区别

    Html.RenderPartial与Html.RenderAction这两个方法都是用来在界面上嵌入用户控件的. Html.RenderPartial是直接将用户控件嵌入到界面上: <%Htm ...

  10. Linux shell(4)

    test比较两个值: 测试比较两个值是linux中常用的比较运算,test命令可以进行对两个值的比较,如果比较成功则返回值为0,否则为非0 常用比较方法: ·1.整数比较 2.字符串比较 3.逻辑比较 ...