青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

我心飛翔

有事不慌,無(wú)事不荒,有容乃大,無(wú)欲則剛,以德立綱,外圓內(nèi)方。

  C++博客 :: 首頁(yè) :: 新隨筆 :: 聯(lián)系 :: 聚合  :: 管理 ::
  1 隨筆 :: 9 文章 :: 13 評(píng)論 :: 0 Trackbacks

線性表的順序表示:

 

#define LIST_INIT_SIZE 100    定義一個(gè)線性表類型

#define LISTINCREMENT 10

typedef struct

{

  ElemType *elem; 基址

  int length; 元素的長(zhǎng)度

  int listsize;當(dāng)前的存儲(chǔ)容量

 }Sqlist;

 

 void InitList_Sq(Sqlist &L)  初始化操作

 {

   L.elem=(ElemType*)malloc(LIST_INIT_SIZE*sizeof(ElemType));

   if(!L.elem)

   return overflow;

   L.length=0;

   L.listsize=LIST_INIT_SIZE;

   return ok;

 }

 

 void DestroyList_Sq(Sqlist &L)  銷毀線性表

 {

   free(L.elem);

   L.elem=NULL;

   L.length=0;

   L.listsize=0;

   return ok;

 }

 

void ClearList(Sqlist L)  清零操作

{

  L.length=0;

  return ok;

}

 

void ListEmpty(Sqlist L)  判空操作

{

  if(L.length=0)

   return True;

   else

   return False;

}

 

int ListLength(Sqlist L)  輸出表的長(zhǎng)度,數(shù)據(jù)元素個(gè)數(shù)

{

  return L.length;

}

 

void GetElem(Sqlist &L,int i,ElemType &e) 得到第I 個(gè)元素的數(shù)據(jù)元素的值

{

   if(i<1 || i>L.length)

   return error;

   e=*(L.elem+i-1);

   return ok;

}

 

int LocateElem(Sqlist &L,ElemType e,void (*compare)(ElemType,ElemType)) 查找與E相等的元素的位置

{

  ElemType *p;

  i=1;

  while(i<=L.length && !compare(*p++,e))

  ++i;

  if(i<=L.length)

  return i;

  else

  return 0;

}

 

void PriorElem(Sqlist L,ElemType cur_e,ElemType pre_e)  得到給出的數(shù)的前一個(gè)元素值

{

  int i=2;

  ElemType *p;

  p=L.elem+1;

  while(i<=L.length && !(*p++==cur_e))

  ++i;

  if(i>L.length)

  return INFEASIBLE;

  else

  {

    pre_e=*--p;

    return OK;

  }

}

 

void NextElem(Sqlist L,ElemType pre_e,ElemType cur_e)  得到后一個(gè)元素的值

{

  int i=1;

  ElemType *p

  p=L.elem;

  while(i<L.length && !(*p++==pre_e))

  ++i;

  if(i>=L.length)

  return INFEASIBLE;

  else

  {

    cur_e=*++p;

    return OK;

  }

}

 

void InsertElem(Sqlist &L,int i,ElemType e)  在第I個(gè)元素中插入一個(gè)值為E的元素

{

  if(i<1 || i>=length+1)

  return ERROR;

  if(L.length>=L.listsize)

  {

 if(!newbase=(ElemType *)realloc(L.elem,(L.listsize+LISTINCREMENT)

    *sizeof(ElemType))))

    return OVERFLOW;

    L.elem=newbase;

    L.listsize+=LISTINCREMENT;

  }

  p=L.elem+L.length-1;

  q=L.elem+i-1;

  for(p;p>=q;--p)

  *(p+1)=*p;

  *q=e;

  ++L.length;

  return ok;

}

 

void DeleteElem(Sqlist &L,int i,ElemType e)  刪除第I個(gè)元素

{

  if(i<1 || i>=L.length)

  return FALSE;

  p=L.elem+i-1;

  q=L.elem+L.length-1;

  e=*p;

  for(p;p<=q;++p)

  *p=*(p+1);

  --L.length;

  return OK;

}

 

void ListTraverse(Sqlist &L,void (*vi)(ElemType))  對(duì)線性表進(jìn)行VI的操作

{

  int i;

  ElemType *p;

  p=L.elem;

  for(i=1;i<=L.length;++i)

  vi(*p++);

  return OK;

}


以上是線性表的一些常用的原操作. 

 

例:

1.求一個(gè)新的集合A=A U B

void union(Sqlist &LA,Sqlist LB)

{

  la_len=LA.length;

  lb_len=LB.length;

  for(i=1;i<=lb_len;++i)

  {

   GetElem(LB,i,e);

   if(!Locate(LA,e,compare()))

   InsertList(LA,++la_len,e);

  }

  return OK;

}

 

2.將二個(gè)非遞減的LA表和LB表歸并為一個(gè)新的非遞減的LC

void MergeList(Sqlist LA,Sqlist LB,Sqlist &LC)

{

  i=j=1;k=0;

  InitList(LC);

  while(i<=LA.length && j<=LB.length)

  {

   GetElem(LA,i,ai);

   GetElem(LB,j,bj);

   if(ai<=bj)

   {

     InsertList(LC,++k,ai);

     ++i;

   }

   else

   {

     InsertList(LC,++k,bj);

     ++j;

   }

  }

  while(i<=LA.length)

  {

    GetElem(LA,i,ai);

    InsertList(LC,++k,ai);

    ++i;

  }

  while(j<=LB.length)

  {

    GetElem(LB,i,bj);

    InsertList(LC,++k,bj);

    ++j;

  }

  return OK;

}

posted on 2005-10-11 00:59 無(wú)情雨 閱讀(1551) 評(píng)論(2)  編輯 收藏 引用 所屬分類: 數(shù)據(jù)結(jié)構(gòu)

評(píng)論

# re: 線性表的順序表示(C語(yǔ)言) 2006-07-29 23:48 嘉湖孺子
請(qǐng)問(wèn), (*vi)(ElemType)和(*compare)(ElemType,ElemType))是怎么實(shí)現(xiàn)的,我在編這個(gè)程序的時(shí)候,似乎沒(méi)有實(shí)現(xiàn)它們,也能運(yùn)行啊!!
迷惑中,如蒙回答,不勝感激。
jiahuruzi@126.com
再次感激  回復(fù)  更多評(píng)論
  

# re: 線性表的順序表示(C語(yǔ)言) 2007-11-16 09:03 糊涂
這是數(shù)據(jù)結(jié)構(gòu)C語(yǔ)言版嗎?
可以在TC中運(yùn)行嗎?
如果沒(méi)有 可以在寫(xiě)個(gè)嗎
?
  回復(fù)  更多評(píng)論
  

青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            亚洲在线日韩| 国产精品国产精品| 亚洲精品乱码久久久久久蜜桃91| 欧美一区二区观看视频| 午夜欧美大片免费观看| 欧美一区二区三区另类| 久久九九精品| 欧美电影免费| 亚洲精品视频二区| 亚洲一区影音先锋| 久久人体大胆视频| 欧美久久久久中文字幕| 国产精品免费小视频| 红桃视频一区| 一区二区三区精品视频| 久久久久国产一区二区| 亚洲第一色在线| 亚洲欧美日韩国产一区| 免费不卡在线视频| 国产精品日日摸夜夜添夜夜av| 黄色小说综合网站| 亚洲综合国产精品| 亚洲第一在线综合在线| 亚洲一区999| 欧美mv日韩mv亚洲| 国产视频久久| 亚洲午夜在线观看视频在线| 久久亚洲精品一区二区| 亚洲激情国产| 久久久久成人精品| 国产精品腿扒开做爽爽爽挤奶网站| 伊人久久大香线蕉综合热线| 亚洲网站视频福利| 欧美刺激午夜性久久久久久久| 亚洲综合电影| 国产精品成人一区二区三区吃奶 | 亚洲第一成人在线| 性色av一区二区三区| 亚洲第一精品影视| 久久精品一区二区三区不卡牛牛 | 欧美一级日韩一级| 亚洲精品乱码久久久久久黑人| 久久精品午夜| 亚洲午夜日本在线观看| 久久亚洲色图| 亚洲一区二区三区午夜| 欧美激情中文字幕一区二区 | 欧美激情一区二区三区蜜桃视频 | 久久成人人人人精品欧| 国产精品h在线观看| 亚洲精品久久久久久久久久久久| 久久九九免费视频| 亚洲欧美日韩视频一区| 欧美精品久久久久久久| 韩国精品一区二区三区| 99pao成人国产永久免费视频| 亚洲专区免费| 蜜臀99久久精品久久久久久软件| 99视频在线精品国自产拍免费观看 | 欧美日韩一区二区视频在线| 国产主播精品在线| 亚洲影院在线观看| 亚洲成色999久久网站| 亚洲网站啪啪| 欧美日韩午夜在线视频| 亚洲国产天堂久久综合| 久久久成人网| 午夜精品亚洲一区二区三区嫩草| 欧美精品午夜| 亚洲黄色成人| 欧美成人一区二区三区片免费| 久久精品理论片| 在线观看久久av| 亚洲国产日韩精品| 欧美先锋影音| 国产视频丨精品|在线观看| 国产一区二区三区在线观看视频 | 久久综合影音| 亚洲麻豆国产自偷在线| 日韩一级片网址| 国产欧美日韩视频一区二区三区| 久久久久久久999| 快播亚洲色图| 亚洲免费视频中文字幕| 欧美一区二区视频97| 最新国产精品拍自在线播放| 99精品国产热久久91蜜凸| 国产欧美日韩不卡免费| 欧美综合激情网| 欧美成人激情视频免费观看| 久久综合伊人77777蜜臀| 一本一本久久a久久精品综合妖精| 一区二区三区精品视频| 国精品一区二区三区| 亚洲人www| 国产私拍一区| 亚洲精品久久久蜜桃| 国产视频亚洲精品| 亚洲国产综合91精品麻豆| 国产免费成人| 亚洲精品在线观看视频| 狠狠色综合日日| 亚洲午夜在线视频| 亚洲精选在线观看| 久久久综合激的五月天| 亚洲欧美国产精品va在线观看| 久久免费视频观看| 欧美一区二区三区精品电影| 欧美理论电影网| 麻豆精品网站| 国产午夜精品在线观看| 一本色道久久综合亚洲精品高清| 在线观看日韩专区| 午夜精品理论片| 亚洲午夜伦理| 欧美日本在线播放| 亚洲国产另类 国产精品国产免费| 国产欧美一区视频| 亚洲午夜视频在线| 亚洲图片激情小说| 欧美久久九九| 亚洲激情网站| 99精品国产99久久久久久福利| 卡一卡二国产精品| 麻豆国产精品777777在线| 国产视频综合在线| 亚洲欧美伊人| 欧美影院成人| 国产女主播一区二区三区| 在线视频你懂得一区| 亚洲一区二区成人| 欧美性淫爽ww久久久久无| 一本大道av伊人久久综合| 亚洲天堂网在线观看| 欧美午夜精品久久久久久人妖| 99精品视频网| 亚洲欧美中文日韩在线| 国产精品试看| 欧美一区二区三区播放老司机| 久久精品伊人| 激情综合五月天| 麻豆91精品| 亚洲激情电影中文字幕| 亚洲一区二区三区精品在线| 欧美午夜无遮挡| 亚洲综合首页| 你懂的一区二区| 99国产精品自拍| 国产精品一区二区男女羞羞无遮挡 | 国产精品久久久久久久午夜| 一本色道久久综合一区| 亚洲欧美在线网| 合欧美一区二区三区| 久久亚洲综合色一区二区三区| 欧美国产三区| 免费成人高清视频| 亚洲精品乱码久久久久久黑人 | 日韩五码在线| 羞羞漫画18久久大片| 国产视频久久网| 久久综合国产精品| 亚洲人成网站在线观看播放| 亚洲午夜电影网| 狠狠色丁香婷婷综合| 欧美国产日韩二区| 亚洲一区二区动漫| 蜜桃久久精品一区二区| 一本色道久久综合亚洲精品高清| 国产精品美女视频网站| 久久亚洲国产精品一区二区| 亚洲精品日韩激情在线电影| 欧美一区观看| 亚洲每日在线| 国产一区再线| 欧美三级韩国三级日本三斤| 久久av一区二区三区漫画| 最新成人在线| 久久精品国产亚洲aⅴ| 亚洲美女黄网| 狠狠色狠狠色综合日日小说| 欧美日韩在线免费视频| 久久久久久久精| 亚洲一区视频在线| 亚洲人体一区| 欧美高清视频在线播放| 久久久久久久综合日本| 亚洲一区久久| 亚洲毛片在线看| 亚洲国产成人午夜在线一区| 国产精品尤物| 国产精品xvideos88| 欧美岛国激情| 老司机免费视频久久| 午夜精品免费视频| 在线视频亚洲欧美| 亚洲精品黄色| 亚洲国产精品999| 欧美成人精品福利| 美腿丝袜亚洲色图| 久久久久久9|