数据结构+算法是我们学习道路上的重中之重,让我们一起进步,一起感受代码之美!

/**
* 让我们从最基本的数据结构——数组开始吧
* 增、删、改、查、插、显示
*/
public class Seqlist {
private long arr[];
private int Maxsize;
private int elements; public Seqlist(int size) {// 构造方法
Maxsize = size;
arr = new long[Maxsize];
elements = 0;
} // 有效数据
public void show() {
System.out.println(elements);
} // 增加
public void add(int value) {
int len = arr.length;
if (elements == len) {
System.out.println("表满,无法继续添加。");
return;
} else {
arr[elements] = value;
}
elements++;
} // 删除(输入数据)
public void delete(int value) {
int i;
for (i = 0; i < elements; i++) {
if (arr[i] == value) {
break;
}
}
System.out.println(i);
if (i == elements) {
System.out.println("数据不存在");
return;
} else {
for (int j = i; j < elements; j++) {
arr[j] = arr[j + 1];// 后面数据往前面移动
}
}
elements--;
} // 修改
public void revise(int olddt, int newdt) {
int i;
for (i = 0; i < elements; i++) {
if (arr[i] == olddt) {
break;
}
}
arr[i] = newdt;
} // 查找(按值查找,返回下标)
public int index(int value) {
for (int i = 0; i < elements; i++) {// 遍历有效数据
if (arr[i] == value) {
return i;
}
}
return -1;
} // 插入
public void insert(int key, int value) {
if (key > ++elements || key < 0) {
System.out.println("输入值无效");
}
for (int j = elements; j > key - 1; j--) {
arr[j + 1] = arr[j];// 这句完成有效数据自加
}
arr[key] = value;// 赋值到输入下标位置
} // 显示
public void display() {
for (int i = 0; i < elements; i++) {
System.out.print(arr[i] + " ");
}
System.out.println();
} public static void main(String[] args) {
Seqlist s = new Seqlist(100);
s.add(324);
s.add(536);
s.add(342);
s.add(87); s.revise(324, 3);// 修改
s.revise(536, 4);
s.revise(342, 5);
s.revise(87, 6);
s.display();
s.show(); s.insert(0, 1);// 插入
s.insert(1, 2);
s.show();
s.display();
} }

最新文章

  1. 《UML大战需求分析》阅读笔记4
  2. js 事件
  3. JSONP的小示例
  4. 【第三课】ANR和OOM——贪快和贪多的后果(下)
  5. 使用网站processon在线作图
  6. php大文件下载
  7. Android自定义属性时format选项可以取用的值
  8. Does anyone successfully use USB drive in Windows7 guest?
  9. Linux进程通信----匿名管道
  10. Windows Azure 社区新闻综述(#72 版)
  11. NYOJ115 市叛乱 【SPFA】
  12. PAT (Advanced Level) 1018. Public Bike Management (30)
  13. Maven工具的使用总结
  14. 实现各种 CSS3 文本动画效果
  15. Asp.Net SignalR - 持久连接类
  16. 《剑指offer(第二版)》面试题64——求1+2+...+n
  17. 深度学习实战-强化学习-九宫格 当前奖励值 = max(及时奖励 + 下一个位置的奖励值 * 奖励衰减)
  18. getBoundingClientRect获取元素在页面上的位置
  19. 关于常用的编码工具如何引入jar包
  20. Diocp截图

热门文章

  1. MyBatis的parameterType传入参数类型
  2. H5 API drawImage的参数
  3. 计算机基础+python初阶
  4. 导航页的开发--手机web app开发笔记
  5. codeforces 877 E. Danil and a Part-time Job(线段树(dfs序))
  6. CF985B Switches and Lamps 思维 第十九
  7. 【笔记 Jvm-并发】
  8. 深入vue源码,了解vue的双向数据绑定原理
  9. 解开Batch Normalization的神秘面纱
  10. spring aop 的一个思考