201521123032 《Java程序设计》第7周学习总结

1. 本周学习总结

以你喜欢的方式(思维导图或其他)归纳总结集合相关内容。

1109725-20170408202654082-1542259775.png

2. 书面作业

ArrayList代码分析

1.1 解释ArrayList的contains源代码

1109725-20170408184901488-1952507056.png

在contains方法中调用indexOF方法,首先比较下标o,如果o==null那么elementData[]中是否==null,如果有就返回下标,如果没有就返回-1。如果o不为null,那么就用equals比较o与elementData[]有没有相同的情况,若有就返回下标,没有就返回-1。

1.2 解释E remove(int index)源代码

1109725-20170408190813535-73581608.png

首先检查是否在边界范围内,用E oldValue保存原来的,判断后把数组前移,最后一位置为null。

1.3 结合1.1与1.2,回答ArrayList存储数据时需要考虑元素的类型吗?

不需要,因为是Object类,所有类都是它的子类,都会被强制转换类型。

1.4 分析add源代码,回答当内部数组容量不够时,怎么办?

扩充容量到所需的容量大小。

1.5 分析private void rangeCheck(int index)源代码,为什么该方法应该声明为private而不声明为public?

1109725-20170408194553519-1553081062.png
这个是内部使用的,就是查看是否出界,没必要给外界进行修改。

HashSet原理

2.1 将元素加入HashSet(散列集)中,其存储位置如何确定?需要调用那些方法?

HashSet内部实际是使用了HashMap,

2.2 选做:尝试分析HashSet源代码后,重新解释1.1

ArrayListIntegerStack

题集jmu-Java-05-集合之5-1 ArrayListIntegerStack

3.1 比较自己写的ArrayListIntegerStack与自己在题集jmu-Java-04-面向对象2-进阶-多态、接口与内部类中的题目5-3自定义接口ArrayIntegerStack,有什么不同?(不要出现大段代码)

ArrayListIntegerStack是用ArrayList来实现,ArrayIntegerStack是用Integer数组来实现。ArrayIntegerStack需要用到top而ArrayListIntegerStack不需要。

3.2 简单描述接口的好处.

实现了扩展功能,对于这题利用接口IntegerStack操作不同的方法。

Stack and Queue

4.1 编写函数判断一个给定字符串是否是回文,一定要使用栈,但不能使用java的Stack类(具体原因自己搜索)。请粘贴你的代码,类名为Main你的学号。

#include <iosteam> 
#include <string> 
using namespace std; #define EMPTY 0 
#define FULL 10000 
#define MAX 10000 typedef char data; typedef struct elem { data d; struct elem *next; 
}elem; typedef struct stack { int cnt; elem *top; 
}stack; void initialize(stack *stk); 
void push(data d, stack *stk); 
data pop(stack *stk); 
bool empty(const stack *stk); 
bool full(const stack *stk); //栈操作函数 void initialize(stack *stk) 
{ stk->cnt = 0; stk->top = NULL; 
} bool empty(const stack *stk) 
{ return stk->cnt == EMPTY; 
} bool full(const stack *stk) 
{ return stk->cnt == FULL; 
} void push(data d, stack *stk) 
{ elem *p; if (!full(stk)) { p = (elem *)malloc(sizeof(elem)); p->d = d; p->next = stk->top; stk->top = p; stk->cnt++; } } data pop(stack *stk) 
{ data d; elem *p; if(!empty(stk)) { d = stk->top->d; p = stk->top; stk->top = stk->top->next; stk->cnt--; delete p; } return d; 
} int main201521123032(void) 
{ data input[MAX]; stack temp; int i = 0; int flag = 0; initialize(&temp); //初始化临时栈 cin>>&input; //输入字符串 while (input[i] != '@') {//字符串入栈 push(input[i], &temp); i++; } while (!empty(&temp)) {//字符依次出栈和字符数组比较,判断是否回文数 if (temp.top->d == input[flag]) { pop(&temp); flag++; } else { cout<<"此字符序列不是回文数!\n"; break; } } if (empty(&temp)) cout<<"此字符序列是回文数!\n"; return 1; 
}

参考[1](http://wenda.so.com/q/1362524971061758)

4.2 题集jmu-Java-05-集合之5-6 银行业务队列简单模拟。(不要出现大段代码)

统计文字中的单词数量并按单词的字母顺序排序后输出

题集jmu-Java-05-集合之5-2 统计文字中的单词数量并按单词的字母顺序排序后输出 (不要出现大段代码)

5.1 实验总结

每个单词出现只要统计一次,而Set的实现类中用TreeSet对对象进行排序

3. 码云上代码提交记录及PTA实验总结

题目集:jmu-Java-05-集合

3.1. 码云代码提交记录

1109725-20170408202103957-874195336.png

在码云的项目中,依次选择“统计-Commits历史-设置时间段”, 然后搜索并截图

3.2. PTA实验

编程(5-1, 5-2, 5-3(选做), 5-6)

实验总结已经在作业中体现,不用写。

转载于:https://www.cnblogs.com/hdf433/p/6682920.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/355856.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

计算机图形图像电影论文,计算机图形图像绘制技术地现状分析及应用发展.doc...

计算机图形图像绘制技术地现状分析及应用发展计算机图形图像绘制技术的现状分析及应用发展-计算机论文计算机图形图像绘制技术的现状分析及应用发展金晓倩 JIN Xiao-qian(四川建筑职业技术学院&#xff0c;德阳618000)(Sichuan College of Architectural Technology&#xff0c…

Java EE 7之前版本替代JPA 2.1的非同步持久性上下文

Java EE 7中的非同步持久性上下文 JPA 2.1引入了非同步持久性上下文的概念&#xff0c;该概念允许对JPA实体管理器的刷新进行细粒度控制&#xff0c;即通过显式调用EntityManager&#xff03;joinTransaction 。 以前&#xff0c;这默认情况下是JTA事务的结束&#xff0c;例如&…

三相同步电机怎么接线图_三相电度表怎么看倍数

电工之家&#xff1a;www.dgzj.com QQ群&#xff1a;2179090关注电工之家官方微信公众号“电工之家”&#xff0c;收获更多经验知识。从题主给的照片来看&#xff0c;这个电度表型号是DTS901-4 1.5(6)A 3X220V/380V精确度为1的1级互感器间接接线的三相四线有功电子电度表。那…

第七周进度表

所花时间 7   代码量&#xff08;行&#xff09; 235 博客量 2 所学知识点 了解了结队开发 转载于:https://www.cnblogs.com/muxiaozhou/p/6993180.html

中国计量大学调剂计算机技术,2020年中国计量大学硕士研究生招生调剂公告

一、调剂分数线&#xff1a;详见《中国计量大学2020年硕士研究生招生复试分数线》。二、调剂程序&#xff1a;1.第一阶段&#xff1a;登陆我校“研究生招生信息系统”网址https://yjsb.cjlu.edu.cn/yjszs_xsb/登记调剂信息。此信息用于复试&#xff0c;请务必认真准确填写。2.第…

linux msgrcv阻塞接收_linux下高并发服务器实现

在做网络服务的时候tcp并发服务端程序的编写必不可少。tcp并发通常有几种固定的设计模式套路&#xff0c;他们各有优点&#xff0c;也各有应用之处。下面就简单的讨论下这几种模式的差异&#xff1a;单进程&#xff0c;单线程在accept之后&#xff0c;就开始在这一个连接连接上…

Maven配置tomcat和jetty插件来运行项目

针对eclipse中的Run on Server有些情况下并不是那么好操作&#xff0c;比如配置maven下的springmvc插件&#xff0c;如果使用此方法运行会很容易出现组件缺少导致错误出现一大堆的问题。 那么针对这种情况&#xff0c;maven下的容器插件tomcat和jetty做了很好的支持。比如在mav…

使用Apache Storm和Kite SDK Morphlines的可配置ETL处理

从我担任软件工程师的第一天起&#xff0c;我总是听到很多方面的相同要求&#xff1a; “ 我们希望所有内容都可配置&#xff0c;我们希望在运行时更改所有内容&#xff0c;我们希望有一个可视化工具来应用所有这些逻辑&#xff0c;以便非开发人员使用和配置我们的应用程序。 …

宁夏警官学院计算机专业,宁夏警官职业学院毕业设计模板.docx

宁夏警官职业学院本科生毕业论文题目&#xff1a;基于人工智能的宁夏警官职业学院的论文排版系统研究姓 名&#xff1a; 宁夏警官职业学院论文学 号&#xff1a; 20185091612院 系&#xff1a; 宁夏警官职业学院信息学院专 业&#xff1a; 计算机指导教师&#xff1a; Megan教授…

oracle 闪回操作(flashback)

234390216 的留下学习 原文地址 http://haohaoxuexi.iteye.com/blog/1594391 Oracle的闪回功能可以在对数据库进行不完全恢复的情况下&#xff0c;对某一个指定的表进行恢复。闪回数据库是进行时间点恢复的新方法&#xff0c;它能够快速将Oracle恢复到以前的时间&#xff0c;以…

用法与区别_生抽老抽、蚝油味极鲜,总算搞清楚区别了,用法大不同,别用错了...

生抽老抽、蚝油味极鲜&#xff0c;总算搞清楚区别了&#xff0c;用法大不同&#xff0c;别再用错了各位读者朋友们大家好&#xff0c;感谢阅读我分享的美食文章&#xff0c;经验和大家一起共享&#xff0c;今天我要和大家分享的内容是&#xff1a;『生抽老抽、蚝油味极鲜&#…

2011年计算机二级试题,2011年3月全国计算机二级C++考试真题

2011年3月全国计算机二级C考试真题(21)有如下程序&#xff1a;#includeusing namespace std;void f1(int& x,int& y) {int zx; xy; yz;}void f2(int x;int y) {int zx; xy; yz;}int main(){int x10,y26;f1(x,y);f2(x,y);cout}运行时的输出结果是A)10B)16C)26D)36(22)有…

centos yum安装_centos7上yum安装碰到的坑

估计是之前更改过这个虚机的配置&#xff0c;故现在正常步骤安装完yum之后&#xff0c;无法使用&#xff0c;具体表现在 执行yum makecache的时候报错&#xff0c;现在no module name yum结果发现&#xff0c;无论怎么修改 usr/bin/yum的配置文件&#xff0c;都无法成功解决上面…

poj 1330 Nearest Common Ancestors LCA/DFS

题目链接: http://poj.org/problem?id1330 题意: 求出两点间的最近公共祖先。 题解: 第一种&#xff1a; 并查集维护&#xff1a;http://www.cnblogs.com/procedure2012/archive/2012/01/29/2331468.html 利用并查集在每次对子树进行遍历时进行合并&#xff0c;因为对以x为根…

设计模式的Java 8 Lambda表达式–装饰器设计模式

Decorator模式&#xff08;也称为Wrapper &#xff09;允许将行为静态或动态地添加到单个对象&#xff0c;而不会影响同一类中其他对象的行为。 可以将其视为子类的替代方法。 我们知道子类在编译时会增加行为&#xff0c;并且更改会影响原始类的所有实例。 另一方面&#xff0…

计算机管理home,电脑home键是什么意思

大家好&#xff0c;我是时间财富网智能客服时间君&#xff0c;上述问题将由我为大家进行解答。以win7为例&#xff0c;电脑键盘上的Home键是微软Windows操作系统中具有返回功能的按键&#xff0c;根据Windows不同的操作环境&#xff0c;home键的功能也会有区别。电脑(computer&…

ie浏览器网页版进入_IE浏览器打开网页提示无法打开Internet站点的解决办法

IE浏览器打开网页时提示Internet explorer无法打开站点&#xff0c;这是什么问题&#xff1f;Internet explorer打不开网页提示无法打开站点怎么办&#xff1f;请看下文五种解决办法。方法一&#xff1a;管理加载项打开浏览器—工具—Internet选项这时会出现“Internet选项”对…

go token验证_registry v2 解析以及如何实现token验证

提到registry v2&#xff0c;主要改进是支持并行pull镜像&#xff0c;镜像层id变成唯一的&#xff0c;解决同一个tag可能对应多个镜像的问题等等。如果还不太了解&#xff0c;可以且听我细细道来。首先不得不说的是v2 新加了一个概念Digest他是基于内容进行寻址(Content-addres…

创建一个简单的 MDM server(1)

前提&#xff1a;已获得 APNS 证书 &#xff0c;已完毕 MDM 配置描写叙述文件的制作。请參考《 MDM 证书申请流程 》一文和《配置MDM Provisioning Profile》。环境&#xff1a;OSX 10.9.2&#xff0c;JDK 1.6。Eclipse JavaEE Helois&#xff0c;Tomcat 7.0一、前言《THE IOS …

epic转移游戏_Epic游戏商城更改退款政策 和steam一模一样

游侠网关注我们&#xff0c;获得最快的游戏资讯Epic正在打造自己的数字游戏商城&#xff0c;一方面对开发者提供更慷慨的销售分成&#xff0c;另一方面对玩家提供每两个月更新一次的免费游戏。虽然Epic游戏商城中的作品数量还在起步阶段&#xff0c;也缺少一些关键的常用功能&a…