java数据结构——数组(Array)
数据结构+算法是我们学习道路上的重中之重,让我们一起进步,一起感受代码之美!
/**
* 让我们从最基本的数据结构——数组开始吧
* 增、删、改、查、插、显示
*/
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();
} }
java数据结构——数组(Array)的更多相关文章
- Java之数组array和集合list、set、map
之前一直分不清楚java中的array,list.同时对set,map,list的用法彻底迷糊,直到看到了这篇文章,讲解的很清楚. 世间上本来没有集合,(只有数组参考C语言)但有人想要,所以有了集合 ...
- JAVA中数组Array与List互转
List<String> list = new ArrayList<String>();String[] array = new String[10]; 1.数组转成Listl ...
- 【Java】数组Array
Java基础复习之:数组 简介 数组(Array):多个相同数据类型按照一定顺序排列的集合,并使用一个名字命名,通过编号的方式对这些数据进行统一管理 一维数组 一维数组的声明与初始化 int[] id ...
- java数据结构----数组篇
1.数组作为java常用的数据结构之一,使用相对简单,下图展示了数组常用操作在允许和不允许重复值的情况下的比较次数 2.进行封装后的代码: package com.cn.higharray; /** ...
- Java基础——数组Array
一.数组基本概念 数组是相同类型数据的有序集合. 数组描述的是相同类型的若干个数据,按照一定的先后次序排列组合而成.其中,每一个数据称作一个数组元素,每个数组元素可以通过一个下标来访问它们. 数组有三 ...
- JAVA中数组(Array)、字符串(String)、集合(List、Set)相互转换
1.数组转List String[] arr = new String[]{"A", "B", "C"}; List list = Arra ...
- Java数据结构和算法(四)赫夫曼树
Java数据结构和算法(四)赫夫曼树 数据结构与算法目录(https://www.cnblogs.com/binarylei/p/10115867.html) 赫夫曼树又称为最优二叉树,赫夫曼树的一个 ...
- Java数据结构和算法 - 数组
Q: 数组的创建? A: Java中有两种数据类型,基本类型和对象类型,在许多编程语言中(甚至面向对象语言C++),数组也是基本类型.但在Java中把数组当做对象来看.因此在创建数组时,必须使用new ...
- Java的数组,集合,数据结构,算法(一)
本人的愚见,博客是自己积累对外的输出,在学习初期或自己没有多少底料的情况下,与其总结写博客不如默默去搞自己的代码,但是学到集合这一块时,数组,集合,数据结构,算法这个概念搞的我比较混淆,所以不得已写这 ...
随机推荐
- springboot 项目的https的发布
1.生成密钥证书 生成命令: keytool -genkey -alias tomcat -storetype PKCS12 -keyalg RSA -keysize -keystore keysto ...
- 回顾js中的cookie/localstorage
1.首先简单总结下cookie cookie:可以做会话跟踪 特点: 1.大小限制(不能超过4k) 2.每个域下cookie不能超过50个 3.有效期(和设定时间有关), ...
- 通过 Channel 实现 Goroutine Pool
最近用到了 Go 从 Excel 导数据到服务器内部 用的是 http 请求 但是发现一个问题 从文件读取之后 新开 Goroutine 会无限制新增 导致全部卡在初始化请求 于是乎就卡死了 问题模拟 ...
- vue父子组件通信高级用法
vue项目的一大亮点就是组件化.使用组件可以极大地提高项目中代码的复用率,减少代码量.但是使用组件最大的难点就是父子组件之间的通信. 子通信父 父组件 <template> <div ...
- Vulkan(0)搭建环境-清空窗口
Vulkan(0)搭建环境-清空窗口 认识Vulkan Vulkan是新一代3D图形API,它继承了OpenGL的优点,弥补了OpenGL的缺憾.有点像科创板之于主板,歼20之于歼10,微信之于QQ, ...
- 模式匹配和正则表达式_python
模式匹配和正则表达式的学习 python实现 正则表达式 其对文字处理有着超高的效率 利用正则表达式可以实现"三步解决一个问题" 步骤 1.用 import re 导入正则表达式模 ...
- CodeForces 875 D High Cry
High Cry 题解: 把思路转换成总-非法方案数. 对于第i个点来说 找到L[i], R[i] 然后 对于所有的在[ L[i], R[i] ] 的值都 < a[i], 然后对于第i个点来说 ...
- HDU 6430 Problem E. TeaTree(虚树)
Problem E. TeaTree Problem Description Recently, TeaTree acquire new knoledge gcd (Greatest Common D ...
- CF980C Posterized 贪心 二十五
Posterized time limit per test 1 second memory limit per test 256 megabytes input standard input out ...
- 在CMD命令行进入和退出Python程序
进入: 直接输入python即可 退出: 方法一:输入exit(),回车 方法二:输入quit(),回车 方法三:CTRL + Z,回车