数据结构-线性表(一)

1.线性表的定义

 线性表 是具有相同属性的数据元素的一个有限序列。该序列中所含元素的个数称为线性表的 长度 ,用n 表示,n >= 0,当 n = 0时,表示线性表是一个空表。 线性表的一般表示为:

A =(a1,a2 ... ai,ai+1,an):用一个标示符A来命名。

其中 a1为第一个元素。

例如:

一种数据结构 linearity = (K,R),其中,K={01,02,03,04,05,06,07,08,-9,10}   R = {<05,01>,<01,03>,<03,08>,<08,02>,<02,07>,<07,04>,<04,06>,<06,09>,<09,10>}

对应的图形如下:


(05)-> (01) -> (03) ->(08)->(02)-> (07) -> (04) ->(06)-> (09) ->(10)
 


1.线性表的长度是可变的,当插入一个元素时,长度就增加1,..

2.线性表是一种线性结构。反过来,任何线性数据结构都可以用线性表的形式表示。

2.对线性表进行排序

排序:就是按照元素对值或某个域对值对升序(降序)排列元素.

1.排序方式很多中(后期会持续更新......希望大家多多关注),

1.插入排序方法

插入排序:把线性表 list[0] ~list[n-1] 中共n个元素看做一个有序表和一个无须表, 开始时有序表中只有一个元素 list[0](一个元素总认为是有序的) 无序表中包含有 n-1个元素list[1]~list[n-1],以后每次从无序表中去出第一个元素。把它插入到前面有序表中到合适位置。使之成为一个新到有序列表。这样每次有序表就新加一个元素,无序表就减少一个元素。经过n-1次后,有序表中包含 n个元素,无序表变为一个空表。整个线性表就成为一个有序表。

如图:

java 实现:

@Test
	public void test3() {
		int[] array={23,34,25,66,21};
		int i,j,temp;
		for(i=1;i<array.length;i++) {
			temp=array[i];
			for(j=i-1;j>=0;j--) {
				if(temp>array[j]) {
					break;
				}else {
					array[j+1]=array[j];
				}
			}
			array[j+1]=temp;
		}
		System.out.println(Arrays.toString(array));
	}

2.冒泡排序方法

https://blog.youkuaiyun.com/duanlei123456/article/details/87604301

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值