2019独角兽企业重金招聘Python工程师标准>>>

/*** * 线性顺序表*/
public class SequentialLinearList {private char[] list;private int length;// 实际长度private int size;// 容量/*** 初始化顺序表,长度为length*/public SequentialLinearList(int size) {this.size = size;length = 0;list = new char[size];}/*** 将index位置赋值为c,会覆盖掉原值* * @param index* @param c*/public void set(int index, char c) {if (index > size - 1 || index < 0) {System.out.println("out of size exception!");return;} else {if (get(index) == 0)length++;list[index] = c;}}/*** 取得下标为index的值,如果为空返回ascii为零的字符* * @param index* @param c* @return*/public char get(int index) {if (index > size - 1 || index < 0) {System.out.println("out of size exception!");return 0;} else {return list[index];}}/*** 在index位置插入c,不会覆盖掉原值* * @param index* @param c*/public void insert(int index, char c) {if (index > size - 1 && index < 0) {System.out.println("out of size exception!");return;} else if (length >= size) {System.out.println("insert into full list exception!");return;} else if (get(index) == 0) {set(index, c);} else {for (int i = length - 1; i >= index; i--) {list[i + 1] = list[i];}set(index, c);length++;}}/*** 返回长度* * @return*/public int length() {return length;}/*** 删除下标为index的元素* * @param index*/public void delete(int index) {if (index > length - 1 || index < 0) {System.out.println("delete not exist element exception");} else {for (int i = index; i < length - 1; i++) {list[i] = list[i + 1];}list[length - 1] = 0;length--;}}/*** 查找c元素,返回第一个找的c元素的下标,没有找到返回-1* * @param c*/public int findChar(char c) {for (int i = 0; i < length; i++) {if (list[i] == c) {return i;}}return -1;}public void show() {for (int i = 0; i < length; i++) {System.out.print(list[i] + ",");}System.out.println();}public static void main(String[] args) {SequentialLinearList sll = new SequentialLinearList(10);sll.set(0, 'a');sll.set(1, 'b');sll.set(2, 'c');sll.set(3, 'd');sll.set(4, 'e');sll.show();sll.insert(2, 'f');sll.show();sll.delete(2);sll.show();System.out.println(sll.length());System.out.println(sll.findChar('c'));sll.set(0, 'z');sll.show();}}

转载于:https://my.oschina.net/u/2360415/blog/539859

java实现线性顺序表相关推荐

  1. java如何给顺序表赋值_JAVA模拟新增顺序表及单链表

    最近在回顾大学学的数据结构,这里给大家用javwww.cppcns.coma模拟顺序表和单链表的新增 1顺序表新增 /** * 顺序www.cppcns.com表 * * @author cjd * ...

  2. java设计一个顺序表类的成员函数_顺序表代码讲解以及实现

    用C语言编写一个有关顺序表的程序代码 创建一个顺序表,其数据元素类型为整型: 在该顺序表中插入数据(#include #include #define MaxSize 50 typedef char ...

  3. c语言线性顺序表,C语言程序——线性顺序表.doc

    C语言程序--线性顺序表.doc 下载提示(请认真阅读)1.请仔细阅读文档,确保文档完整性,对于不预览.不比对内容而直接下载带来的问题本站不予受理. 2.下载的文档,不会出现我们的网址水印. 3.该文 ...

  4. python数据结构之线性顺序表

    线性表(linear list)是数据结构的一种,一个线性表是n个具有相同特性的数据元素的有限序列.本文结合了互联网上的一些代码,以及结合百度百科关于线性顺序表的定义,实现了全部代码. 在稍复杂的线性 ...

  5. C++实现线性顺序表的初始化,插入,删除,销毁,清空等功能

    C++实现线性顺序表的初始化,插入,删除,销毁,清空等功能 以下代码主要严蔚参考敏主编的<数据结构>(C语言)编写 //线性顺序表 #include <iostream> #d ...

  6. 数据结构(07)— 线性顺序表基本操作

    1. 顺序表结构 #define MaxLen 50typedef struct {int data[MaxLen]; // 定义一个数组来存储线性表中所有元素int len; // 存储线性表的长度 ...

  7. 数据结构(04)— 线性顺序表实战

    1. 设计思路 本实战的实质是完成对学生成绩信息的建立.查找.插入.修改.删除等功能,可以首先定义项目的数据结构,然后将每个功能写成一个函数来完成对数据的操作,最后完成主函数以验证各个函数功能并得出运 ...

  8. 使用JAVA数组实现顺序表

    1,引入了JAVA泛型类,因此定义了一个Object[] 类型的数组,从而可以保存各种不同类型的对象. 2,默认构造方法创建了一个默认大小为16的Object数组:带参数的构造方法创建一个指定长度的O ...

  9. java设计一个顺序表类的成员函数,用java编写一个逐个输出顺序表中所有数据元素的成员函数...

    import java.util.ArrayList; import java.util.List; public class Test { /** * @param args */ public s ...

最新文章

  1. 堪称神级的 Java 技术栈手册火了!
  2. 5G时代下,AI赋能行业的思考
  3. 轻松学编程--轻松学Oracle数据库(附光盘)
  4. NoSQL 之 Morphia 操作 MongoDB
  5. 高效程序员的 7 项技能
  6. 零基础教你玩转ESP8266(一) 重识ESP8266
  7. 马云:希望下辈子能做个好女人,男人离开女人“啥都不是”
  8. php漏洞书籍,PHP漏洞全解(一)-PHP网站的安全性问题
  9. opencv安装与配置vs2019
  10. 【论文阅读】Probabilistic Embeddings for Cross-Modal Retrieval CVPR 2021 --- 跨模态检索,概率嵌入,一对多,多对多匹配
  11. Machine Learning读书会·北京今日启动(第3期周爱民、张帆)
  12. OSPO Summit 2022 正式启动!OSPO Summit 2022 Launched!
  13. 关于域名的说法,一级,二级
  14. 随笔-你买罐头干什么
  15. Google 工程主管:AIGC 将在三年内终结编程!
  16. 破解“低代码”的4大误区,拥抱低门槛高效率的软件开发新选择
  17. 解读2022中国城市大脑首批三项标准(新版)
  18. 掌握RxJava的葵花宝典
  19. android相册隐藏拍照按钮,你绝对不知道的4大手机“隐藏”拍照功能!学会100%惊艳朋友圈!...
  20. Tiled使用教程(游戏地图制作)

热门文章

  1. 全国计算机python考试难吗_全国计算机二级的难度有多大?
  2. java链接mysql原始方法_java连接mysql数据库的方法
  3. 实验三 lr分析器的设计与实现_实验室规划设计趋势之一灵活性|无风管通风柜的灵活性是如何实现的?...
  4. opencv matlab配置,Matlab下运行c++程序的配置(包含opencv的c++程序)
  5. request.getRequestDispatcher().forward(request,response)和response.sendRedirect()的区别
  6. python pdb调试快捷键,Python调试工具pdb使用详解
  7. element 动态加载下拉框_动态增加select框(elementUI 框架)
  8. qt定时器暂停与重新开始_手把手教你写个小程序定时器管理库
  9. The valid characters are defined in RFC 7230 and RFC 3986问题
  10. websocket连接出现 HTTP Authentication failed; no valid credentials available