線性表的使用——順序實現

-rainbow-發表於2018-11-16

一、用java實現線性表

import java.util.ArrayList;

public class linearList {
	public static void main(String[] args) {
		List l=new List();//建立新線性表 l
		//新增線性表元素
		l.tianjia("mun1");
		l.tianjia("mun2");
		l.tianjia("mun3");
		l.tianjia("mun4");
		l.tianjia("mun5");
		l.shuchu();//輸出線性表
		l.charu(3, "mun2.5");//插入元素
		l.shuchu();//輸出線性表
		l.get(3);//輸出指定位置元素
		l.shanchu(3);//刪除指定位置元素
		l.shuchu();//輸出線性表
	}
 
}
class List{
	ArrayList<String> a=new ArrayList<String>();//構建線性表
	
	public void tianjia(String str){//線性表新增
		a.add(str);	
	}
	
	public void shuchu(){//輸出線性表
		for(int i=0;i<a.size();i++){
			System.out.print(a.get(i)+" ");
		}	
		System.out.println();
	}
	
	public void get(int n){//輸出線性表指定位置元素
		System.out.println(a.get(n-1));
	}
	
	public void charu(int n,String str){//線性表的插入 指定位置之後的元素從後向前依次往後移動,指定位置新增元素
		a.add(a.get(a.size()-1));
		for(int i=a.size()-2;i>=n;i--){
			a.set(i, a.get(i-1));
		}
		a.set(n-1, str);
	}
	
	public void shanchu(int n){//線性表的刪除 指定位置之後的元素從前往後依次向前移動,指定位置元素被覆蓋,最後的重複元素刪除
		for(int i=n-1;i<a.size()-1;i++){
			a.set(i, a.get(i+1));
		}
		a.remove(a.size()-1);
	}
}

二、用c語言實現線性表

 

1.stdlib.h中,包含了C語言的一些常用庫函式。如 

  • 動態記憶體相關的malloc, realloc,zalloc,calloc,free等。 
  • 隨機數相關的rand,srand等。 
  • 系統相關的system, getenv,setenv等。 
  • 字串轉數值函式,atoi, atof,strtoul等。 

如果在程式碼中,呼叫了這個標頭檔案中的函式或者巨集定義,則需要引用該標頭檔案。 
2. exit用於在程式執行的過程中隨時結束程式,exit的引數是返回給OS的。而return是返回函式值並退出函式。exit是系統級別的,return是語言級別的。 
3. malloc的全稱是memory allocation,中文叫動態記憶體分配,用定大於申請一塊連續的指小的記憶體塊區域以void*型別返回分配的記憶體區域地址,當無法知道記憶體具體位置的時候,想要繫結真正的記憶體空間,就需要用到動態的分配記憶體。 

相關文章