20162327WJH第一次实验——线性结构

实 验 报 告

实 验 报 告

课程:程序设计与数据结构

班级: 1623

姓名: 王旌含

学号:20162327

成绩: 2分

指导教师:娄嘉鹏 王志强

实验日期:9月25日

实验密级: 非密级

预习程度: 已预习

实验时间:15:25-17:15

必修/选修: 必修

实验序号: cs_23

一、实验内容

  • 1、Java中的线性表的测试:过程,问题
  • 2、Java中的线性表的应用:过程,问题
  • 3、顺序表的实现(伪代码,产品代码,测试代码):过程(分析,设计,实现,测试),问题
  • 4、链表的实现(伪代码,产品代码,测试代码):过程(分析,设计,实现,测试),问题
  • 5、Java ArrayList,LinkedList源码分析:过程,学到的技巧

二、实验步骤

实验一

  • 1、测试代码及过程:
import org.junit.Test;

import java.util.LinkedList;

import static org.junit.Assert.*;

/**
* Created by Administrator on 2017/9/25/025.
*/
public class LinkedlistTest {
@Test
public void contains() throws Exception {
boolean last = false;
LinkedList a=new LinkedList();
a.add("wangjinghan");
a.add("WJH");
a.add("tonying");
last = a.contains("WJH");
assertEquals(true,last);
// = a.contains("WWW");
// assertEquals(true,last);
} @Test
public void add() throws Exception {
boolean last = false;
LinkedList a=new LinkedList();
last = a.add(100);
assertEquals(true,last);
} @Test
public void remove() throws Exception {
boolean last;
LinkedList a=new LinkedList();
a.add("wangjignhan");
a.add("WJH");
//a.add("tingying317");
last = a.remove("wangjinghan");
//assertEquals(true,last);
last = a.remove("WJH");
assertEquals(true,last);
} }

实验二

  • 测试代码及过程
import org.junit.Test;

import java.util.ArrayList;
import java.util.Random; import static org.junit.Assert.*; /**
* Created by Administrator on 2017/10/7/007.
*/
public class cListTest {
@Test
public void mergeSortedList() throws Exception {
cList cList = new cList();
Random random = new Random();
ArrayList<Integer> alist = new ArrayList<>();
ArrayList<Integer> blist = new ArrayList<>();
int a=0;
for(int i=0;i<13;i++){
a = random.nextInt(100);
alist.add(a);
}
for(int i=0;i<8;i++){
a = random.nextInt(100);
blist.add(a);
}
cList.Sort(alist);
System.out.println("alist = " + alist);
cList.Sort(blist);
System.out.println("blist = " + blist);
System.out.println("cList = " + cList.mergeSortedList(alist,blist));
}
}

实验三

  • 测试代码及过程
import org.junit.Test;

import java.util.Random;

import static org.junit.Assert.*;

/**
* Created by Administrator on 2017/10/8/008.
*/
public class MyArrayListTest<T> {
MyArrayList list = new MyArrayList();
T [] arr=(T [])new Object [10];
Random random = new Random();
@Test
public void add() throws Exception {
MyArrayList list = new MyArrayList();
list.add(34);
list.add(4);
list.add(5);
list.add(3);
list.add("wangjignhan");
list.add("王旌含");
System.out.println(list.toString());
}
@Test
public void contains() throws Exception {
MyArrayList list = new MyArrayList();
boolean last = false;
list.add(12);
list.add(5);
list.add(18);
list.add("wangjignhan");
list.add("王旌含");
last = list.contains(5);
assertEquals(true,last); } @Test
public void remove() throws Exception {
MyArrayList list = new MyArrayList();
boolean last;
list.add(8);
list.add(13);
list.add(4);
list.add(45);
System.out.println(list.toString());
list.remove(4);
list.remove(8);
System.out.println(list.toString());
// assertEquals(true, last); }
}

20162327WJH第一次实验——线性结构的更多相关文章

  1. 网络对抗第一次实验——PC平台逆向破解(5)M

    网络对抗第一次实验--PC平台逆向破解(5)M 实践一 手工修改可执行文件,改变程序执行流程,直接跳转到getShell函数. 操作步骤: 获取实验用文件pwn1,复制,复制出来的文件改名为20155 ...

  2. 20145226夏艺华《网络对抗》第一次实验拓展:shellcode注入+return-to-libc

    20145226夏艺华<网络对抗>第一次实验拓展:shellcode注入+return-to-libc shellcode注入实践 编写shellcode 编写shellcode已经在之前 ...

  3. 线性结构和非线性结构、稀疏数组、队列、链表(LinkedList)

    一.线性结构和非线性结构 线性结构: 1)线性绪构作为最常用的数据结构,其特点是数据元素之间存在一对一的线性关系 2)线性结构有两种不同的存储结构,即顺序存储结构和链式存储结构.顺序存储的线性表称为顺 ...

  4. 20145330《Java程序设计》第一次实验报告

    20145330<Java程序设计>第一次实验报告 实验一Java开发环境的熟悉 实验内容 1.使用JDK编译.运行简单的Java程序: 2.使用Eclipse 编辑.编译.运行.调试Ja ...

  5. 20145320《Java程序设计》第一次实验报告

    20145320<Java程序设计>第一次实验报告 北京电子科技学院(BESTI)实验报告 课程:Java程序设计 班级:1453 指导教师:娄嘉鹏 实验日期:2016.04.08 18: ...

  6. 20145224&20145238 《信息安全系统设计基础》 第一次实验

    20145224&20145238 <信息安全系统设计基础>第一次实验 课程:信息安全系统设计基础 班级:1452 姓名:陈颢文 荆玉茗 学号:20145224 20145238 ...

  7. D_S 线性结构

    线性结构的定义:若结构是非空有限集,则有且仅有一个开始结点和一个终端结点,并且所有结点都最多只有一个直接前驱和一个直接后继. 线性结构的特点: 只有一个首结点和尾结点 除首尾结点外,其他结点只有一个直 ...

  8. 20145317彭垚 《Java程序设计》第一次实验实验报告

    20145317彭垚 <Java程序设计>第一次实验实验报告 北京电子科技学院(BESTI)实验报告 课程:Java程序设计 班级:1453 指导教师:娄嘉鹏 实验名称:Java开发环境的 ...

  9. 20145103JAVA第一次实验报告

    20145103<Java程序设计>第一次实验报告 实验内容及其步骤 一.命令行下java程序开发 建立一个java文件,然后在命令行中,对程序进行javac编译,就生成了.class文件 ...

随机推荐

  1. CCF认证201712-1最小差值

    问题描述 给定n个数,请找出其中相差(差的绝对值)最小的两个数,输出它们的差值的绝对值. 输入格式 输入第一行包含一个整数n. 第二行包含n个正整数,相邻整数之间使用一个空格分隔. 输出格式 输出一个 ...

  2. 一份可以落地靠谱iOS开发规范

    列出来的都是个人觉得在团队合作,代码阅读,代码维护中比较重要的一些点,没有什么空格 间距华而不实的东西在里面.涉及 命名规范.编码规范.代码管理规范 命名规范 项目名都遵循大驼峰命名.例如:MSMob ...

  3. 腾讯云Mac图床插件

    背景 随着博客越写越多,难免会遇到需要插入图片来说明的情况. 图床选择 首先调研了市面上的图床服务,本着稳定长期的目标,过滤掉了打一枪换一个地方的野鸡小网站,剩余比较靠谱的优缺点如下. 图床 优点 缺 ...

  4. day 85 Vue学习之vue-cli脚手架下载安装及配置

      1. 先下载node.js,下载地址:https://nodejs.org/en/download/ 找个目录保存,解压下载的文件,然后配置环境变量,将下面的路径配置到环境变量中. 由于 Node ...

  5. Web安全0002 - SQL注入 - 注入流程

    注:本文是学习网易Web安全进阶课的笔记,特此声明. 一.信息搜集 — 数据库类型 - 报错信息.特有语句— 数据库版本(@@version,$version)— 数据库用户— 判断数据库权限 二.数 ...

  6. 20155217 2016-2017-2 《Java程序设计》第9周学习总结

    20155217 2016-2017-2 <Java程序设计>第9周学习总结 教材学习内容总结 JBDC是用于执行SQL的解决方案,开发人员使用JDBC的标准接口,数据库厂商对接口直接操作 ...

  7. PostgreSQL调整内存与IO的参数说明

    磨砺技术珠矶,践行数据之道,追求卓越价值 回到上一级页面:PostgreSQL内部结构与源代码研究索引页    回到顶级页面:PostgreSQL索引页 [作者:高健@博客园 luckyjackgao ...

  8. rabbitmq的安装和使用

    一.RabbitMQ是实现了高级消息队列协议(AMQP)的开源消息代理软件(亦称面向消息的中间件).RabbitMQ服务器是用Erlang语言编写的,而群集和故障转移是构建在开放电信平台框架上的.所有 ...

  9. Security2:角色和权限

    权限的授予分为三部分:权限(Permission),安全对象(Securable)和安全主体(Principal),这三个术语之间的关系是:Grant Permission on Securable ...

  10. Java动态代理:一个面包店的动态代理帝国

    文章首发于[博客园-陈树义],点击跳转到原文大白话说Java动态代理:一个面包店的动态代理帝国 代理模式是设计模式中非常重要的一种类型,而设计模式又是编程中非常重要的知识点,特别是在业务系统的重构中, ...