Java第5次实验提纲(集合)
PTA与参考资料
集合预习课件
题集:jmu-Java-06-集合
集合实验文件
第1次实验
1.1 ArrayListIntegerStack(课堂演示)
可演示:jdk中的javadoc文档注释/**。
javadoc:javadoc技术可以从程序源代码中抽取类、方法、成员等注释形成一个和源代码配套的API帮助文档。
注1:不要导入java.awt.List,应导入java.util.List
注2:提交的时候务必要将中文注释删掉。
思考:是否一定要指定栈中的元素类型?
1.2 银行业务队列简单模拟(课堂演示)
Queue<String> q = new Queue<>();
可以成功吗?为什么?
LinkedList<Integer> queue = new LinkedList<>();
queue.addLast(1);
Queue<String> q = new LinkedList<>();
q.addLast(1); #为什么这句会错误?
请在JDK文档中查询Queue接口,然后看其有什么实现类?使用其中一个实现类完成。
可演示:ctrl+shift+o 快速导入所需包, ctrl+2。
思考:可以直接使用LinkedList<String> queue = new LinkedQueue<>();直接代替队列使用吗?
1.3 统计一段英文文字中的不同单词的个数并按单词的字母顺序排序后输出(课堂演示)
采用什么List、Set、Queue还是Map?
如何按字母顺序排序?
逐个读取单词,见Scanner的hasNext()与next()方法
如何遍历?forEach, iterator
快速测试技巧:
String str = "将PTA中的输入样例直接粘贴到Eclipse的双引号之间,并删掉多余的字符";
//Scanner sc = new Scanner(System.in); //然后把System.in改成str,如下所示
Scanner sc = new Scanner(str); //Scanner可直接对字符串处理
//其他代码
接下来测试的时候,就直接运行。无需在控制台手动粘贴输入样例。
注意:在PTA提交的时候。需要将Scanner(str)改成Scanner(System.in)。
1.4 尝试使用Java集合类中的LinkedList代替栈,来判断一个字符串是否是回文
- 简单讲解:使用栈判断回文的原理。
- 简单讲解:使用LinkedList中的哪两个方法来代替入栈与出栈。
第2次实验
2.1 6-1 List中指定元素的删除
读取单词到List:Scanner lineScanner = new Scanner(line),然后使用lineScanner的next方法。可以忽略词与词之间空格、多个空格。
从头到尾删要注意什么?
2.2 7-3 统计文字中的单词数量并按出现次数排序(课堂演示)
- Map的Key, Value分别应该是什么类型?
- 怎么判断Map中的的keySet中是否存在某个单词?如果单词不存在,怎么放入Map?
- 怎么对value进行排序?
Collections仅能对List进行排序,怎么将EntrySet转化为List (List有一个构造函数,可以接收Set)?如何对List进行排序? - 在IDE中如何快速生成匿名内部类(如Comparator)?
alt+/
2.3 7-4 倒排索引(自行完成)
2.4 7-5 GeneralStack(自行完成)
简单讲解:泛型接口、泛型类的意义。
2.5 本章特别加分任务
实验任务书中的“倒排索引”、“逆向最大匹配分词算法”。
请为你的程序编写若干方法,比如:对于“倒排索引”题目,
请至少编写如下几个方法:
- 建立索引 createIndex
- 打印索引 printIndex
- 检索 queryIndex
对于“逆向最大匹配分词算法”,请至少编写:
- List split(String line, Set words) //对lines使用词表words进行分词
编写好以后,请直接给老师演示并讲解清楚。
参考资料:
参考链接
Java第5次实验提纲(集合)的更多相关文章
- Java第06次实验提纲(集合)
PTA与参考资料 重要参考-集合简述 题集:jmu-Java-06-集合 集合实验文件 第1次实验 1.1 ArrayListIntegerStack(课堂演示) 可演示:jdk中的javadoc文档 ...
- Java第5次实验提纲(Java图形界面编程)
1. Swing与NetBeans 使用NetBeans编写简单界面.见GUI实验参考文件中的0.第06次实验(图形程序设计.事件处理与Swing).doc 题目1: Swing用户界面组件与事件处理 ...
- Java第05次实验提纲(Java图形界面编程)
1. Swing与NetBeans 使用NetBeans编写简单界面.见GUI实验参考文件中的0.第06次实验(图形程序设计.事件处理与Swing).doc 题目1: Swing用户界面组件与事件处理 ...
- Java第6次实验提纲(异常)
PTA与参考资料 题集:集合 异常实验文件 第1次实验 1.1 7-1 常用异常 如何进行强制转换 如何捕获多种类型的异常 1.2 7-2 使用异常机制处理异常输入 在哪里加catch 1.3 7-3 ...
- Java第07次实验提纲(异常)
PTA与参考资料 题集:集合 异常实验文件 第1次实验 1.1 7-1 常用异常 如何进行强制转换.父类型转化为子类型常见错误. 如何捕获多种类型的异常 简要输出异常信息,System.out.pri ...
- Java第2次实验提纲(Java基本语法与类库)
1. 使用Git克隆(clone)项目到你的Eclipse项目中 见以下参考资料中的3 从码云将项目clone到你的电脑 重要提示: 使用Git来管理你的代码以后,当你在本机Eclipse项目中开始编 ...
- Java第02次实验提纲(Java基本语法与类库)
1. 熟悉Git 1.1 学会使用网页版的操作代码仓库(gitee) 申请账号,然后根据老师提供的链接或者二维码加入团队,然后修改昵称. fork老师提供的代码库项目,新建自己学号命名的文件并上传一些 ...
- Java第1次实验提纲(基本概念与引入PTA+Git)
0. 控制台下编译.运行 在Notepad++编写Java程序 学会使用控制台,javac.java 学会使用Notepad++ 参考资料: 控制台-cmd应用基础 扫盲教程 使用命令行编译并运行ja ...
- Java第7次实验提纲(多线程)
PTA与参考资料 题集:多线程 多线程实验参考文件 ThreadReading 实验-基础部分 1.1 基础题目MyThread类.自行完成题集合的:PrintTask 1.2 Runnable与匿名 ...
随机推荐
- Django通过pycharm创建后,如何登录admin后台?
问题背景: 使用pycharm创建完成django项目(项目名称为:mydjangopro,app名称为my_blog) , 本想登录后台直接输入地址:http://127.0.0.1:8000/ad ...
- 俄罗斯方块(2D、3D)
声明:这篇文章主要是参考几个别人的博文及源代码学习.参考文章: 1)http://blog.csdn.net/qian_f/article/details/19758671 2)http://yaca ...
- 使用Swoole测试MySQL在特定SQL下的并发性能
场景描述 从全文检索或者缓存中获取ID,根据ID查询数据库获取基础信息,进行页面展示 SQL:select * from table where id in(id1,id2,id3...id40) 此 ...
- js数据结构之栈、队列(数据结构与拉火车游戏)
1.js实现队列的数据结构(先进先出) function Queue (array) { if(Object.prototype.toString.call(array)!="[object ...
- MYSQL时间盲住
mysql注释 -- ,-- -,#,--+等 常用的判断语句: ' and if(1=0,1, sleep(10)) # " and if(1=0,1, sleep(10)) --+ ) ...
- phpcmsV9.5.8 后台拿shell
参考url:https://xianzhi.aliyun.com/forum/read/1507.html poc:index.php??m=content&c=content&a=p ...
- kmp——cogs 1570 乌力波
1570. [POJ3461]乌力波 ★☆ 输入文件:oulipo.in 输出文件:oulipo.out 简单对比 时间限制:1 s 内存限制:256 MB [题目描述] 法国作家乔治 ...
- [Codeforces 933A]A Twisty Movement
Description 题库链接 给你一个长度为 \(n\) 的只含有 \(1,2\) 的序列.你可以选择其中的一段 \([l,r]\) ,将区间翻转,翻转后使得单调不下降序列最长.求最长长度. \( ...
- ●POJ 2794 Double Patience
题链: http://poj.org/problem?id=2794题解: 状压DP,概率 9元组表示每一堆还剩几张牌.可以用5进制状压,共5^9=1953124个状态. 令P(S)表示S这个状态被取 ...
- 51 nod 1610 路径计数(Moblus+dp)
1610 路径计数 基准时间限制:1 秒 空间限制:131072 KB 分值: 80 难度:5级算法题 路径上所有边权的最大公约数定义为一条路径的值. 给定一个有向无环图.T次修改操作,每次修改一 ...