代码语言
.
CSharp
.
JS
Java
Asp.Net
C
MSSQL
PHP
Css
PLSQL
Python
Shell
EBS
ASP
Perl
ObjC
VB.Net
VBS
MYSQL
GO
Delphi
AS
DB2
Domino
Rails
ActionScript
Scala
代码分类
文件
系统
字符串
数据库
网络相关
图形/GUI
多媒体
算法
游戏
Jquery
Extjs
Android
HTML5
菜单
网页交互
WinForm
控件
企业应用
安全与加密
脚本/批处理
开放平台
其它
【
Java
】
顺序表的基本操作插入、删除、追加、查询
作者:
笑红
/ 发布于
2016/6/20
/
471
package dataStructure; /** * @author administor created on 2016-6-18 * 描述:顺序表的创建以及操作 * 内部封装固定的数组,对其进行以下操作: * 初始化 * 计算表长度 * 插入节点 * 追加节点 * 删除节点 * 查找节点 * 显示所有节点 */ public class SLType { class Data{ String key; String name; int age; } static final int MAXLEN=50; Data[] listData=new Data[MAXLEN+1];//顺序表内封装的是固定大小的数组,数组元素类型为Data型 int listLen; /** * 初始化顺序表 * @param SL */ void SLInit(SLType SL){ SL.listLen=0; } /** * 获取顺序表长度 * @param SL * @return */ int SLLength(SLType SL){ return SL.listLen; } /** * 将data插入SL表当中 * @param SL 带插入表 * @param n 插入位置 * @param data 插入数据 * @return */ int SLinsert(SLType SL,int n,Data data){ int i; //当前表的长须不能大于数组上限 if(SL.listLen>=MAXLEN){ System.out.println("表已经满了,不能插入"); return 0; } //插入的节点不能再数组的端点,或超出端点 if(n<1||n>SL.listLen-1){ System.out.println("插入的点序号不正确"); return 0; } //将每一个节点后移一位 for(i=SL.listLen;i>=n;i--){ SL.listData[i+1]=SL.listData[i]; } SL.listData[n]=data; SL.listLen++; return 1; } /** *将数据插入顺序表尾部 * @param SL * @param data * @return */ int SLadd(SLType SL,Data data){ if(SL.listLen>=MAXLEN){ //表长度不大于数组长度 System.out.println("表满了"); return 0; } SL.listData[++SL.listLen]=data; return 1; } /** * 删除n位置的元素 * @param SL * @param n * @return */ int SLDelete(SLType SL,int n){ if(n<1||n>SL.listLen+1){ System.out.println("删除节点序号不正确"); return 0; } for(int i=n;i<SL.listLen;i++){ SL.listData[i]=SL.listData[i+1]; } SL.listLen--; return 1; } /** * 根据序号查询表元素 * @param SL * @param n * @return */ Data SLFindByNum(SLType SL,int n){ if(n<1||n>SL.listLen+1){ System.out.println("结点序号错误"); return null; } return SL.listData[n]; } /** * 根据元素关键字查询对应的元素在表中的位置 * @param SL * @param key * @return */ int SLFindByCount(SLType SL,String key){ for(int i=1;i<=SL.listLen;i++){ if(key.equals(SL.listData[i].key)){ return i; } } return 0; } /** * 遍历线性表中所有元素 * @param SL * @return */ int SLAll(SLType SL){ for(int i=1;i<=SL.listLen;i++){ System.out.println(SL.listData[i].key+" "+SL.listData[i].name+" "+SL.listData[i].age); } return 0; } }
试试其它关键字
顺序表
同语言下
.
List 切割成几份 工具类
.
一行一行读取txt的内容
.
Java PDF转换成图片并输出给前台展示
.
java 多线程框架
.
double类型如果小数点后为零则显示整数否则保留两位小
.
将图片转换为Base64字符串公共类抽取
.
sqlParser 处理SQL(增删改查) 替换schema 用于多租户
.
JAVA 月份中的第几周处理 1-7属于第一周 依次类推 29-
.
java计算两个经纬度之间的距离
.
输入时间参数计算年龄
可能有用的
.
C#实现的html内容截取
.
List 切割成几份 工具类
.
SQL查询 多列合并成一行用逗号隔开
.
一行一行读取txt的内容
.
C#动态修改文件夹名称(FSO实现,不移动文件)
.
c# 移动文件或文件夹
.
c#图片添加水印
.
Java PDF转换成图片并输出给前台展示
.
网站后台修改图片尺寸代码
.
处理大图片在缩略图时的展示
笑红
贡献的其它代码
(
14
)
.
把一个文档前五行中包含字母的行删掉,同时删除6到10
.
遍历windows的所有窗口并输出窗口标题
.
目标检测图像增强操作
.
MVC使用Newtonsoft无需实体类,实现JSON数据返回给前
.
从文件加载数据进表(OVERWRITE覆盖,追加不需要OVERWRI
.
写入cookie后只显示一次的DIV提示框代码
.
时间相关
.
CSS 做个图片水印效果
.
可重复执行的sql脚本
.
压缩打包文件下载
Copyright © 2004 - 2024 dezai.cn. All Rights Reserved
站长博客
粤ICP备13059550号-3