[2018/11/14] Java学习
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了[2018/11/14] Java学习,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含2029字,纯文字阅读大概需要3分钟。
内容图文
在网上下载了一个用Java实现的数据结构的视频, 看了前三个视频, 感觉收获很大, 今天花了接近三小时在Java的数据结构上.
课程的目录如下:
第01讲:数组
第02讲:简单排序
第03讲:栈和队列
第04讲:链表
第05讲:双端链表和双向链表
第06讲:递归的应用
第07讲:递归的高级应用
第08讲:希尔排序
第09讲:快速排序
第10讲:二叉树的基本概念
第11讲:二叉树的基本操作
第12讲:遍历二叉树
第13讲:删除二叉树节点
第14讲:红黑树
第15讲:哈希表
第16讲:开放地址法
第17讲:链地址法
第18讲:图的基本概念
第19讲:图的搜索
第20讲:图的最小生成树
今天和昨天我看完了前三章的内容, 代码都亲手敲了一遍:
例子配套使用了测试类, 而不是将代码写在一个类里面, 这种写法非常的新颖(我以前的写法太过老土).
细节都是用private保证了类的安全性.
对于变量的使用, 太厉害了.
package ch_01; public class MyArray { private long [] arr; private int elements; /** * 初始化数组 */ public MyArray() { arr = newlong[50]; } /** * 重构初始化函数, 自定义函数的长度 * @param maxsize */public MyArray(int maxsize) { arr = newlong[maxsize]; } /** * 插入数组的元素 */publicvoid insert(long value) { /*由于数组的最末一项的编号是elements-1, 所以可以直接通过elements来表示新加入的元素*/ arr[elements] = value; elements++; // 注意elements要后移一位, 方便下一次添加元素. } /** * 显示数组的元素 */publicvoid display() { System.out.print("["); for (int i = 0; i < elements; i++) { System.out.print(arr[i] + " "); } System.out.println("]"); } /** * 按照数组值搜索 */publicint search(long value) { int i; for (i = 0; i < elements; i++) { if (value == arr[i]) { break; } } if(i == elements) { // 如果遍历到最后一个序列, 注意最后一个元素的序列因该是elements-1return -1; } else { return 1; } } /** * 按序列获取元素值 */publiclong get(int index) { if (index >= elements || index < 0) { thrownew ArrayIndexOutOfBoundsException(); } else { return arr[index]; } } /** * 删除数据 */publicvoid delete(int index) { if(index >= elements || index < 0) { thrownew ArrayIndexOutOfBoundsException(); } else { for(int i = index; i < elements; i++) { arr[i] = arr[i + 1]; //写错了, 之前写成了arr[index] = arr[index + 1] //抹掉index序列的元素的值, 后面的元素整体向前移动 } elements--; // 处理后, 要将元素的数量减一 } } }
测试类:
package ch_01; public class TestArray { /** * 测试类 * @param args */ public static void main(String[] args) { MyArray arr = new MyArray(); arr.insert(10); arr.insert(20); arr.insert(90); arr.display(); System.out.println(arr.search(20)); System.out.println(arr.get(2)); arr.delete(0); arr.display(); } }
原文:https://www.cnblogs.com/huangZ-H/p/9961043.html
内容总结
以上是互联网集市为您收集整理的[2018/11/14] Java学习全部内容,希望文章能够帮你解决[2018/11/14] Java学习所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。