- 浏览: 346221 次
- 性别:
- 来自: 南京
文章分类
- 全部博客 (169)
- spring (20)
- java (44)
- ibatis (0)
- hibernate (6)
- struts (2)
- javascript (6)
- ajax (1)
- eclipse (4)
- 其他 (10)
- database (17)
- ibatis 分页 (7)
- xml (2)
- pl/sql (6)
- sql (4)
- apache (3)
- oracle (8)
- jdom (1)
- Open ModelSphere (1)
- 线程 (2)
- 多线程 (2)
- 查找文件 (1)
- Comparator (2)
- jxl (2)
- jquery (1)
- Flex (2)
- 非技术 (1)
- mysql (2)
- zxing (1)
- jdbc (1)
- Java内存 (1)
- editplus (1)
- log4j (1)
- sqlserver (2)
- base64 (1)
- Linux (4)
- Shell (2)
- 非技术共享 (1)
- 省市 (1)
- PowerDesigner (3)
- 观察者模式 (2)
- Servlet (1)
- 单点登录 (1)
- IO (1)
- tomcat (1)
- clob (1)
- html (1)
- jsp (2)
- JNative (1)
- WebService (2)
- Highcharts (1)
- Spring Security (1)
- ztree (1)
- Mongodb (3)
- sftp (1)
- SVN (1)
- openSUSE (1)
- Ubuntu (1)
- nio (1)
- springboot (1)
- java8 (1)
最新评论
-
wajjj:
[flash=200,200][url][img][list] ...
【JAVA】读取excel内容(兼容03和07格式) -
xurichusheng:
jjhe369 写道感谢分享!但是发现一个小问题,就是第13, ...
oracle 存储过程分页查询 -
jjhe369:
感谢分享!但是发现一个小问题,就是第13,14行的V_STAR ...
oracle 存储过程分页查询 -
飞天奔月:
为什么不用 Map<String, String> ...
读取.properties的内容,并将内容放入一个Map中 -
xurichusheng:
814687491 写道测试了一下,无法换行!你可以自定义自己 ...
使用google的zxing制作二维码
import java.util.Arrays; /** * <顺序存储结构> * * @author * @version [版本号, 2011-9-19] * @see [相关类/方法] * @since [产品/模块版本] */ public class SequenceList<T>{ //初始化容量 static final int DEFAULT_INITIAL_CAPACITY = 10; //保存数组的长度 private int capacity; //定义一个数组,用于保存顺序线性表的元素 private Object[] elementData; //保存顺序表中元素的当前个数 private int size = 0; /** * <默认构造函数> */ public SequenceList(){ capacity = DEFAULT_INITIAL_CAPACITY; elementData = new Object[capacity]; } /** * <以一个初始化元素创建顺序线性表> */ public SequenceList(T elment){ this(); elementData[0] = elment; size++; } public SequenceList(T elment, int initSize){ capacity = 1; //把capacity设为大于initSize的最小的2的N次方 while (capacity < initSize){ capacity <<= 1; } elementData = new Object[capacity]; elementData[0] = elment; size++; } /** * <获取顺序线性表的长度> * @return [参数说明] * * @return int [返回类型说明] * @exception throws [违例类型] [违例说明] * @see [类、类#方法、类#成员] * @author * @date 2011-9-19 */ public int length(){ return size; } /** * <获取顺序线性表中索引为i处得元素> * @param i * @return [参数说明] * * @return T [返回类型说明] * @exception throws [违例类型] [违例说明] * @see [类、类#方法、类#成员] * @author * @date 2011-9-19 */ @SuppressWarnings("unchecked") public T get(int i){ if (i<0 || i>size-1){ throw new IndexOutOfBoundsException("线性表索引越界"); } return (T)elementData[i]; } /** * <查找顺序线性表中指定元素的索引> * @param element * @return [参数说明] * * @return int [返回类型说明] * @exception throws [违例类型] [违例说明] * @see [类、类#方法、类#成员] * @author * @date 2011-9-19 */ public int locate(T element){ for (int i=0; i<size; i++){ if (elementData[i].equals(element)){ return i; } } return -1; } /** * <扩容> * @param minCapacity [参数说明] * * @return void [返回类型说明] * @exception throws [违例类型] [违例说明] * @see [类、类#方法、类#成员] * @author * @date 2011-9-19 */ public void ensureCapacity(int minCapacity){ //如果数组的原有长度小于目前所需的长度 if (minCapacity > capacity){ while (capacity < minCapacity){ //不断地将capacity*2,直到capacity大于minCapacity capacity <<= 1; } elementData = Arrays.copyOf(elementData, capacity); } } /** * <向顺序线性表的指定位置插入一个元素> * @param element * @param index [参数说明] * * @return void [返回类型说明] * @exception throws [违例类型] [违例说明] * @see [类、类#方法、类#成员] * @author * @date 2011-9-19 */ public void insert(T element, int index){ if (index<0 || index>size){ throw new IndexOutOfBoundsException("线性表索引越界"); } ensureCapacity(size+1); //将指定索引处index之后的所有元素向后移动一格 System.arraycopy(elementData, index, elementData, index+1, size-index); elementData[index] = element; size++; } /** * <在线性顺序表的开始处添加一个元素> * @param element [参数说明] * * @return void [返回类型说明] * @exception throws [违例类型] [违例说明] * @see [类、类#方法、类#成员] * @author * @date 2011-9-19 */ public void add(T element){ insert(element, size); } /** * <删除指定索引处的元素,并返回被删除的元素> * @param index * @return [参数说明] * * @return T [返回类型说明] * @exception throws [违例类型] [违例说明] * @see [类、类#方法、类#成员] * @author * @date 2011-9-19 */ @SuppressWarnings("unchecked") public T delete(int index){ if (index<0 || index>size){ throw new IndexOutOfBoundsException("线性表索引越界"); } T oldValue = (T)elementData[index]; int numMoved = size-index-1; if (numMoved > 0){ System.arraycopy(elementData, index+1, elementData, index, numMoved); } //清空最后一个元素 elementData[--size] = null; return oldValue; } /** * <删除最后一个元素,并返回被删除的元素> * @return [参数说明] * * @return T [返回类型说明] * @exception throws [违例类型] [违例说明] * @see [类、类#方法、类#成员] * @author * @date 2011-9-19 */ public T remove(){ return delete(size-1); } /** * <判断线性顺序表是否为空> * @return [参数说明] * * @return boolean [返回类型说明] * @exception throws [违例类型] [违例说明] * @see [类、类#方法、类#成员] * @author * @date 2011-9-19 */ public boolean isEmpty(){ return size==0; } /** * <清空线性表> * * @return void [返回类型说明] * @exception throws [违例类型] [违例说明] * @see [类、类#方法、类#成员] * @author * @date 2011-9-19 */ public void clear(){ Arrays.fill(elementData, null); } /** * 输出顺序线性表中的元素 * @return */ public String toString(){ if (size == 0){ return "[]"; } StringBuilder sb = new StringBuilder("["); for (int i=0; i<size; i++){ sb.append(elementData[i].toString()+", "); } int len = sb.length(); return sb.delete(len-2, len).append("]").toString(); } }
测试
public class Test{ /** <一句话功能简述> * <功能详细描述> * @param args [参数说明] * * @return void [返回类型说明] * @exception throws [违例类型] [违例说明] * @see [类、类#方法、类#成员] * @author * @date 2011-9-19 */ public static void main(String[] args){ SequenceList<String> list = new SequenceList<String>(); list.add("aaaa"); list.add("bbbb"); list.add("cccc"); System.out.println(list); //在索引为1处插入一个新的元素 list.insert("dddd",1); System.out.println(list); //删除索引为2处得元素 list.delete(2); System.out.println(list); //获取cccc字符串在顺序线性表中的位置 int index = list.locate("cccc"); System.out.println(index); } }
发表评论
-
mysql树
2019-09-26 08:39 422mysql树 -
【JAVA】组织树
2019-09-04 10:17 1054JDK 版本:jdk 1.8 及以上。 1. ... -
多线程多批量插入大数据
2018-10-31 11:19 6413参考 https://blog.csdn.ne ... -
java 7 nio逐行读取文件内容
2015-12-26 23:33 5464nio逐行读取文件内容,使用 java 7. 首先,获取 ... -
java 6 IO读取txt文件内容
2015-12-26 23:24 883逐行读取。 首先获取文件的编码格式; 读取文件内容。 ... -
【JAVA】读取excel内容(兼容03和07格式)
2015-12-21 13:51 2184jar 包: poi-3.13.j ... -
一行代码去除List中的重复数据
2015-12-02 10:52 16741. 核心代码: List<String> ... -
将List中的对象中的字段的重复值删除
2015-12-01 11:10 2709如下面的对象 Subs,如果其属性 startSt 和 e ... -
jdk 官方下载地址
2015-11-06 10:00 1865http://www.oracle.com/techn ... -
jsp页面显示二进制图片
2014-11-05 15:58 40861. DAO层 import java.sql.C ... -
java中使用JNative调用dll方法
2014-03-03 16:02 5346使用JNative调用dll方法, dll 文件名 ... -
Vector排序
2013-05-08 10:17 15431. Vector 默认按元素的添加顺序排序 im ... -
使用观察者模式监听Map值的改变
2013-05-02 16:46 6213观察者(Observer)角色:为所有的具体观察者定 ... -
【转】一个比较快的Base64 编码/解码 算法
2013-03-28 17:50 1729转自: 中国开源社区 最快的 Base64 编码/解 ... -
jdbc 数据库连接池
2012-12-04 16:09 1519注:有些java类是JDK ... -
将查询结果导入excel 中
2012-06-29 11:14 12141. 数据库:oracle 10g2 JDK: ... -
使用Comparator做对象的排序
2012-06-15 18:15 1339之前在面试的时候,人家老是问怎么对对象进行排序。 虽然 ... -
【转】 模拟银行业务调度系统
2012-06-13 15:39 1212转自:CSDN,itm_hadf ... -
HttpClient 代理实例(Get方式) 线程
2012-01-10 14:23 1556使用的jar包: commons-codec-1.4.jar ... -
httpclient资料(自用)
2012-01-10 07:07 1092httpclient资料
相关推荐
1.基于顺序存储结构的图书信息表的创建和输出 问题描述定义一个包含图书信息 (书号、书名、价格)的顺序表,读入相应的图书数据来完成图书信息表的创建。然后,统计图书表中的图书个数,同时逐行输出每本图书的信息。...
### 顺序存储结构线性表的插入与删除 #### 知识点概述 在计算机科学领域,线性表是数据结构中最基本的数据组织形式之一,它由一系列具有相同特性的数据元素组成,这些元素之间存在着一种一对一的关系。线性表可以...
在本项目中,"C语言期末大作业:用顺序存储结构实现图书管理系统"是一个实践性的编程任务,旨在让学生掌握C语言编程基础以及数据结构中的顺序存储结构应用。这个系统允许用户进行一系列图书管理操作,包括图书信息的...
实验报告的主题是“数据结构实验报告1:线性表的顺序存储结构”,旨在通过实践让学生掌握线性表在顺序存储结构中的基本操作,包括创建、插入和删除等。实验使用了Visual C++作为开发环境,并涉及到了C++编程语言。 ...
在本实验中,线性表采用顺序存储结构进行实现,这是线性表的一种常见存储方式。 顺序存储结构是指在计算机内存中,线性表的各个元素按照它们在逻辑上的顺序依次存储在一块连续的内存区域中。这种存储方式使得线性表...
### 队列的顺序存储结构及其实现详解 队列是一种常见的数据结构,它遵循先进先出(First In First Out, FIFO)的原则。在计算机科学中,队列被广泛应用于任务调度、缓存管理、多线程同步等多个场景。队列的存储方式...
本次实验的核心在于深入理解并实践**线性表顺序存储结构**。线性表是数据结构中最基础的数据组织形式之一,它由一系列相同类型的数据元素组成,这些元素按照逻辑关系形成线性的序列。顺序存储结构则是通过连续的内存...
顺序存储结构是二叉树的一种非传统存储方式,与链式存储(节点间通过指针链接)不同,顺序存储通常在数组中实现,这种方法对于特定类型的操作可能更有效率。 在二叉树的顺序存储中,我们通常采用一种称为“二叉堆”...
顺序存储结构是一种常见的数据结构,尤其在处理线性数据时非常实用。线性表是数据结构中最基本的一种,它由n(n>=0)个相同类型元素构成的有限序列。在这个特定的压缩包中,"顺序存储结构线性表c程序源码"提供了...
在顺序存储结构中,线性表的元素在内存中是连续存放的,这种存储方式使得我们可以直接通过下标访问元素。在这个实验中,我们将重点探讨线性表在顺序存储结构上的实现,包括其建立、插入、删除、查找和显示等基本操作...
在计算机科学中,数据结构是组织和管理大量数据的有效方式,而顺序存储结构是一种基本且简单易懂的数据结构。在C语言中,顺序存储结构通常指的是数组,它将元素按照线性的顺序依次存储在内存中。本文将深入探讨C语言...
在本题目中,任务是使用定长顺序存储结构表示串,并找出两个字符串的最长公共子串。这是一个典型的字符串处理问题,通常在计算机科学和编程领域出现。以下是对这个任务的详细解析: 首先,我们需要理解“定长顺序...
在这个实验中,我们将深入探讨栈的顺序存储结构,并通过C++语言来实现它。 栈的顺序存储结构,也称为线性存储,是最基础的栈实现方式之一。它使用一个连续的内存区域来存储栈中的元素,如同数组一样。在顺序栈中,...
实验 二 基于链式存储结构 实现线性表的基本的 常见的运算 提示: ⑴ 提供一个实现功能的演示系统 ⑵ 具体物理结构和数据元素类型自行选定 ⑶ 线性表数据可以使用磁盘文件永久保存
在本主题中,我们将深入探讨线性表的顺序存储结构及其基本操作,这些操作包括初始化、建立线性表、插入元素、删除元素、清空线性表以及查找元素。我们将使用C语言来实现这些操作,这对于初学者来说是一个很好的实践...
某软件公司大约有30名员工,每名员工有姓名、工号、职务等属性,每年都有员工离职和...把所有员工按照顺序存储结构建立一个线性表,建立离职和入职函数,当有员工离职或入职时,修改线性表,并且打印最新的员工名单。
队列的顺序存储结构及实现操作,可以AC的~
线性表在顺序存储结构上的插入删除运算; 编写主函数(使用字符菜单形式)
1 表-顺序存储结构.ppt 数据结构文档