亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? link2.cpp

?? 單鏈表的實現方法
?? CPP
字號:
//程序名:link2.cpp
//      程序功能:帶表頭結點單向鏈表類的實現(包括單向鏈表插入,刪除和查找操作的實現)
//          作者:william
//          日期:2006.10.1
//          版本:1.1
//      修改內容:在該版本是在link1.cpp的基礎上修改了讓鏈表帶有連頭結點
//      修改日期:2006.10.2
//      修改作者:william
//
//
//

#include<stdio.h>
#include<iostream.h>

typedef int DataType;      //為本程序定義所使用的具體數據類型

struct LinkNode {           //定義單向鏈表的結點結構
	DataType data;
	struct LinkNode *next;
};

class Link{         //  定義單向鏈表類

public:
     
    Link(void);    // 定義構造函數,初始化為帶表頭結點的空鏈
    int Insert(int i ,DataType x);    //插入
    int Delete(int i);    //刪除
    void TailCreate(int n);   //尾插入建立單向鏈表
    void HeadCreate(int n);   //頭插入建立單向鏈表
    void Print();    // 輸出整個單向鏈表中的數據
    ~Link(void);   //析構函數

private:
	struct LinkNode *head;    // 鏈頭結點

};

//////////////////////////////////////////////////////////////////////////////
//  構造函數
//  函數功能:將鏈頭指針初始化為帶表頭結點的空鏈
//函數參數:無
//參數返回值:無

Link::Link(void)
{
  head=new LinkNode;  // // head is the attribute of link class
  head->next=NULL;
}

//////////////////////////////////////////////////////////////////////////////
// 析構函數
// 函數功能:將鏈表所有結點的空間釋放(包括表頭結點)
//函數參數:無
//參數返回值:無

Link::~Link(void)
{
 struct LinkNode *p;
 
 while(head!=NULL)
 {
	 p=head;
	 head=head->next;
	 delete p;
 }
}

//////////////////////////////////////////////////////////////////////////////
//  插入函數
//  函數功能:將一個新值插入到某個位置的結點之后上,如果超過總結點個數,則做尾插入
//函數參數:
//       i 表示插入位置
//       x 表示待插入的元素值      
//參數返回值:
//     1: 表示插入成功
//     0:表示插入失敗     
int Link::Insert(int i ,DataType x)
{
 struct LinkNode *temp;
 struct LinkNode *p,*q;  // head is the attribute of link class
 

 if ( i<=0) 
  {
	cout<<"\n the position is error\n\n";
    return 0;   // error
  }
  
  int j=1;
  q=head; p=head->next; //q從表頭結點開始走,p則從鏈表的第一結點開始
  while(j <i && p!=NULL)     
  {
     q=p; p=p->next;
	 j++;
  }
  temp=new LinkNode;
  temp->data=x;
  temp->next=p;
  q->next=temp;
  return 1;  // ok
}

//////////////////////////////////////////////////////////////////////////////
//  刪除函數
//  函數功能:將鏈表中某個位置上的結點刪除
//函數參數:
//       i 表示刪除位置
//參數返回值:
//     1: 表示刪除成功
//     0:表示刪除失敗     
int Link::Delete(int i)
{
 struct LinkNode *q,*p;
 
 int j=1;

 if ( i<=0) 
  {
	cout<<"\n the position is error\n\n";
    return 0;   // error
  }
  
  q=head; p=head->next;
  while(j <i && p!=NULL)
  {
     q=p;
	 p=p->next;
	 j++;
  }
  if (p==NULL)
  {
	  cout<<"the position is our of range\n\n";
	  return 0;  // error
  }
  q->next=p->next;
  delete p;
  return 1; // ok
}

//////////////////////////////////////////////////////////////////////////////
//  尾插入建立鏈表函數
//  函數功能:用尾插入建立鏈表方法生成一個具有n個結點的鏈表
//函數參數:
//       n 表示結點個數
//參數返回值:無
void Link::TailCreate(int n)
{
  struct LinkNode *R,*p;
  R=head;
  for(int i=0;i<n;i++)
  {
	  p=new LinkNode;
	  cin>>p->data;
	  p->next=NULL;
	  R->next=p;
	  R=p;
  };
}

//////////////////////////////////////////////////////////////////////////////
//  頭插入建立鏈表函數
//  函數功能:用頭插入建立鏈表方法生成一個具有n個結點的鏈表
//函數參數:
//       n 表示結點個數
//參數返回值:無

void Link::HeadCreate(int n)
{
  struct LinkNode *p, *h=NULL;
  for(int i=0;i<n;i++)
  {
	  p=new LinkNode;
	  cin>>p->data;
	  p->next=h;
	  h=p;
  };
  head->next=p;   // head is the attribute of link class  因為帶表頭結點
}


//////////////////////////////////////////////////////////////////////////////
//  鏈表輸出函數
//  函數功能:從頭到尾的將鏈表中的所有結點一個一個輸出來(不包括表頭結點)
//函數參數:無
//參數返回值:無

void Link::Print(void)
{
 struct LinkNode *p=head->next;   //跳過表頭結點,表頭結點的值不能輸出
 cout<<"\n The data in the link are:\n";
 while ( p!=NULL)
 {
	 cout<<p->data<<"   ";   
	 p=p->next;
 }
 cout<<"\n\n\n";
}


//////////////////////////////////////////////////////////////////////////////
//  主函數
//參數返回值:無

void main()
{
	Link link1;  // link1 object   
	int finished=0;
    int choice , n ,pos;
	DataType x;

	while ( !finished )
    {
		cout<<"*********Menu*********\n";
		cout<<"1:Created by insert in head\n";
        cout<<"2:Created by insert in tail\n";
		cout<<"3:Insert\n";
		cout<<"4:Delete\n";
		cout<<"5:display all\n";
		cout<<"6:exit\n";
		cout<<"Please choose a choice(1-6):";
		cin>>choice;
		switch(choice)
		{
		case 1:
			   cout<<"\nplease enter the number of nodes(insert in head):";   //調用頭插入建立鏈表
			   cin>>n;
			   link1.HeadCreate(n);
			   link1.Print();
               break; 
        case 2:
		       cout<<"\nplease enter the number of nodes(insert in tail):";    //調用尾插入建立鏈表
			   cin>>n;
			   link1.TailCreate(n);
			   link1.Print();
               break;      
		case 3:
               cout<<"\nplease enter the position to insert:";     //調用鏈表插入函數
			   cin>>pos;
			   cout<<"\n please enter the data to insert\n";
			   cin>>x;
			   if ( link1.Insert(pos,x)==1)  // ok
				    link1.Print();
               break; 
		case 4:
               cout<<"\nplease enter the position to delete:";     //調用鏈表刪除函數
			   cin>>pos;
			   if ( link1.Delete(pos)==1 )
			      link1.Print();   //ok
               break; 
       case 5:
			  link1.Print();      //調用鏈表輸出函數
			  break;
		case 6:
			   finished=1;     //結束程序
			   break;
		}  // switch
	} // while 
}// main			   

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
九九九久久久精品| 日本欧美肥老太交大片| 欧美日韩成人激情| 激情深爱一区二区| 一区二区三区免费观看| 国产欧美一区二区三区鸳鸯浴 | 久久久电影一区二区三区| 不卡区在线中文字幕| 免费看日韩精品| 亚洲精品水蜜桃| 国产日韩欧美精品电影三级在线| 欧美日韩你懂得| 不卡的av网站| 狠狠色2019综合网| 亚洲福利电影网| 亚洲欧美日韩在线播放| 久久―日本道色综合久久| 欧美日韩一区在线观看| 91尤物视频在线观看| 黑人精品欧美一区二区蜜桃| 亚洲国产美女搞黄色| 亚洲美女偷拍久久| 国产精品免费免费| 亚洲精品在线观| 日韩一区二区三区免费看| 91久久一区二区| 91网站最新地址| 成人手机电影网| 国产成人鲁色资源国产91色综| 蜜臀国产一区二区三区在线播放 | 国产精品电影一区二区| 国产喂奶挤奶一区二区三区| 日韩一级成人av| 91精品国产乱码久久蜜臀| 在线视频中文字幕一区二区| 国产成人在线视频网站| 国产精品影视网| 国产福利电影一区二区三区| 久久精品国产一区二区三| 免费观看久久久4p| 蜜桃久久久久久| 久久精品99国产国产精| 久久99国产精品麻豆| 蜜芽一区二区三区| 秋霞电影一区二区| 免费不卡在线观看| 男男视频亚洲欧美| 久久国产精品72免费观看| 麻豆国产一区二区| 激情文学综合丁香| 福利电影一区二区| bt7086福利一区国产| 色综合天天综合在线视频| 色狠狠综合天天综合综合| 91九色02白丝porn| 666欧美在线视频| 88在线观看91蜜桃国自产| 欧美日韩一卡二卡| 91精品国产黑色紧身裤美女| 日韩视频一区二区三区在线播放| 日韩精品专区在线| 国产视频911| 亚洲天堂福利av| 亚洲二区视频在线| 久久国产精品区| 成人黄色网址在线观看| 色婷婷av一区二区三区gif | 91国偷自产一区二区三区观看 | 亚洲欧美激情插 | 成人av在线播放网站| va亚洲va日韩不卡在线观看| 91久久精品一区二区三区| 欧美久久久久久久久中文字幕| 欧美一级xxx| 中文字幕va一区二区三区| 亚洲综合成人网| 九九九精品视频| 成人app网站| 91.com视频| 国产精品久久久久久久久晋中 | 2014亚洲片线观看视频免费| 国产精品久久久久久久久免费樱桃| 亚洲午夜私人影院| 国产精品一区一区三区| 欧美在线观看一区| 久久综合九色综合欧美98| 亚洲色图自拍偷拍美腿丝袜制服诱惑麻豆| 亚洲va韩国va欧美va精品| 国产在线视频一区二区三区| 91视频一区二区| 欧美sm极限捆绑bd| 亚洲一区二区精品视频| 国产麻豆精品在线| 欧美日韩精品一区二区| 久久天天做天天爱综合色| 一区二区三区av电影 | 国产一区二区视频在线播放| 欧美色爱综合网| 国产精品美女久久久久aⅴ国产馆 国产精品美女久久久久av爽李琼 国产精品美女久久久久高潮 | 国产99精品国产| 欧美一区二区在线免费播放| 国产精品污污网站在线观看| 日本成人中文字幕在线视频| 色综合亚洲欧洲| 国产日产精品1区| 麻豆精品一二三| 欧美三级韩国三级日本一级| 中文字幕av资源一区| 久久超碰97人人做人人爱| 欧美三级中文字| 亚洲男人的天堂在线观看| 粉嫩av亚洲一区二区图片| 精品福利av导航| 日韩福利电影在线观看| 色猫猫国产区一区二在线视频| 国产日韩欧美一区二区三区综合 | 午夜精品福利久久久| av一区二区三区在线| 久久久美女艺术照精彩视频福利播放| 午夜欧美一区二区三区在线播放| 99精品在线免费| 日本一区二区三区电影| 国产综合色产在线精品| 欧美大白屁股肥臀xxxxxx| 天堂久久久久va久久久久| 色婷婷亚洲综合| 亚洲精品美国一| 色综合久久久久网| 亚洲欧美色图小说| 91免费在线看| 亚洲免费观看高清| 99re这里只有精品首页| 日本一二三四高清不卡| 高清不卡一区二区在线| 国产欧美一区二区三区在线看蜜臀| 国内精品免费**视频| 欧美精品一区二区不卡| 国产精品一二三在| 久久久国产精品午夜一区ai换脸| 精品在线一区二区| 久久先锋影音av| 国产99久久久国产精品免费看| 日本一区二区三区在线观看| 成人激情动漫在线观看| 国产精品久久一级| 一本一本久久a久久精品综合麻豆| 国产精品萝li| 91色视频在线| 夜夜嗨av一区二区三区网页| 欧美亚洲尤物久久| 性欧美大战久久久久久久久| 这里只有精品免费| 国产呦萝稀缺另类资源| 久久综合999| 波多野结衣一区二区三区| 自拍偷拍欧美激情| 欧洲视频一区二区| 三级一区在线视频先锋 | 91欧美一区二区| 亚洲一区二区三区四区中文字幕| 欧美日韩日日夜夜| 久国产精品韩国三级视频| 欧美精品一区二区三区久久久| 国产白丝精品91爽爽久久| 亚洲丝袜自拍清纯另类| 欧美日韩精品欧美日韩精品| 日韩和的一区二区| 久久亚洲免费视频| 91麻豆高清视频| 香蕉成人伊视频在线观看| 精品三级av在线| 成人av午夜影院| 亚洲福利视频一区| 久久久午夜电影| 色婷婷精品大在线视频| 日韩精品乱码免费| 国产欧美日韩一区二区三区在线观看| 97se亚洲国产综合在线| 香蕉成人伊视频在线观看| 久久九九久精品国产免费直播| 91亚洲精品乱码久久久久久蜜桃 | 国产精品每日更新| 欧美精品一级二级三级| 国产精品亚洲成人| 偷拍日韩校园综合在线| 26uuu精品一区二区三区四区在线| av电影在线不卡| 看片网站欧美日韩| 一区二区欧美国产| 国产欧美日韩综合精品一区二区| 欧美视频在线观看一区| 国产成人在线视频播放| 亚洲成av人片在线| 国产精品三级久久久久三级| 欧美伦理视频网站| 99视频超级精品| 国产在线播放一区二区三区| 亚洲成人av电影在线| 国产精品久久久久影院亚瑟| 日韩欧美一区在线|