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

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

?? bo5-2.c

?? 數據結構比較經典和重要的問題
?? C
字號:
 /* bo5-2.c 三元組稀疏矩陣的基本操作,包括算法5.1(9個) */
 Status CreateSMatrix(TSMatrix *M)
 { /* 創建稀疏矩陣M */
   int i,m,n;
   ElemType e;
   Status k;
   printf("請輸入矩陣的行數,列數,非零元素數:");
   scanf("%d,%d,%d",&(*M).mu,&(*M).nu,&(*M).tu);
   (*M).data[0].i=0; /* 為以下比較順序做準備 */
   for(i=1;i<=(*M).tu;i++)
   {
     do
     {
       printf("請按行序順序輸入第%d個非零元素所在的行(1~%d),列(1~%d),元素值:",i,(*M).mu,(*M).nu);
       scanf("%d,%d,%d",&m,&n,&e);
       k=0;
       if(m<1||m>(*M).mu||n<1||n>(*M).nu) /* 行或列超出范圍 */
         k=1;
       if(m<(*M).data[i-1].i||m==(*M).data[i-1].i&&n<=(*M).data[i-1].j) /* 行或列的順序有錯 */
         k=1;
     }while(k);
     (*M).data[i].i=m;
     (*M).data[i].j=n;
     (*M).data[i].e=e;
   }
   return OK;
 }

 void DestroySMatrix(TSMatrix *M)
 { /* 銷毀稀疏矩陣M */
   (*M).mu=0;
   (*M).nu=0;
   (*M).tu=0;
 }

 void PrintSMatrix(TSMatrix M)
 { /* 輸出稀疏矩陣M */
   int i;
   printf("%d行%d列%d個非零元素。\n",M.mu,M.nu,M.tu);
   printf("行  列  元素值\n");
   for(i=1;i<=M.tu;i++)
     printf("%2d%4d%8d\n",M.data[i].i,M.data[i].j,M.data[i].e);
 }

 Status CopySMatrix(TSMatrix M,TSMatrix *T)
 { /* 由稀疏矩陣M復制得到T */
   (*T)=M;
   return OK;
 }

 int comp(int c1,int c2) /* 另加 */
 { /* AddSMatrix函數要用到 */
   int i;
   if(c1<c2)
     i=1;
   else if(c1==c2)
     i=0;
   else
     i=-1;
   return i;
 }

 Status AddSMatrix(TSMatrix M,TSMatrix N,TSMatrix *Q)
 { /* 求稀疏矩陣的和Q=M+N */
   Triple *Mp,*Me,*Np,*Ne,*Qh,*Qe;
   if(M.mu!=N.mu)
     return ERROR;
   if(M.nu!=N.nu)
     return ERROR;
   (*Q).mu=M.mu;
   (*Q).nu=M.nu;
   Mp=&M.data[1]; /* Mp的初值指向矩陣M的非零元素首地址 */
   Np=&N.data[1]; /* Np的初值指向矩陣N的非零元素首地址 */
   Me=&M.data[M.tu]; /* Me指向矩陣M的非零元素尾地址 */
   Ne=&N.data[N.tu]; /* Ne指向矩陣N的非零元素尾地址 */
   Qh=Qe=(*Q).data; /* Qh、Qe的初值指向矩陣Q的非零元素首地址的前一地址 */
   while(Mp<=Me&&Np<=Ne)
   {
     Qe++;
     switch(comp(Mp->i,Np->i))
     {
       case  1: *Qe=*Mp;
                Mp++;
                break;
       case  0: switch(comp(Mp->j,Np->j)) /* M、N矩陣當前非零元素的行相等,繼續比較列 */
                {
                  case  1: *Qe=*Mp;
                           Mp++;
                           break;
                  case  0: *Qe=*Mp;
                           Qe->e+=Np->e;
                           if(!Qe->e) /* 元素值為0,不存入壓縮矩陣 */
                             Qe--;
                           Mp++;
                           Np++;
                           break;
                  case -1: *Qe=*Np;
                           Np++;
                }
                break;
       case -1: *Qe=*Np;
                Np++;
     }
   }
   if(Mp>Me) /* 矩陣M的元素全部處理完畢 */
     while(Np<=Ne)
     {
       Qe++;
       *Qe=*Np;
       Np++;
     }
   if(Np>Ne) /* 矩陣N的元素全部處理完畢 */
     while(Mp<=Me)
     {
       Qe++;
       *Qe=*Mp;
       Mp++;
     }
   (*Q).tu=Qe-Qh; /* 矩陣Q的非零元素個數 */
   return OK;
 }

 Status SubtSMatrix(TSMatrix M,TSMatrix N,TSMatrix *Q)
 { /* 求稀疏矩陣的差Q=M-N */
   int i;
   for(i=1;i<=N.tu;i++)
     N.data[i].e*=-1;
   AddSMatrix(M,N,Q);
   return OK;
 }

 Status MultSMatrix(TSMatrix M,TSMatrix N,TSMatrix *Q)
 { /* 求稀疏矩陣的乘積Q=M*N */
   int i,j,h=M.mu,l=N.nu,Qn=0;
   /* h,l分別為矩陣Q的行、列值,Qn為矩陣Q的非零元素個數,初值為0 */
   ElemType *Qe;
   if(M.nu!=N.mu)
     return ERROR;
   (*Q).mu=M.mu;
   (*Q).nu=N.nu;
   Qe=(ElemType *)malloc(h*l*sizeof(ElemType)); /* Qe為矩陣Q的臨時數組 */
   /* 矩陣Q的第i行j列的元素值存于*(Qe+(i-1)*l+j-1)中,初值為0 */
   for(i=0;i<h*l;i++)
     *(Qe+i)=0; /* 賦初值0 */
   for(i=1;i<=M.tu;i++) /* 矩陣元素相乘,結果累加到Qe */
     for(j=1;j<=N.tu;j++)
       if(M.data[i].j==N.data[j].i)
         *(Qe+(M.data[i].i-1)*l+N.data[j].j-1)+=M.data[i].e*N.data[j].e;
   for(i=1;i<=M.mu;i++)
     for(j=1;j<=N.nu;j++)
       if(*(Qe+(i-1)*l+j-1)!=0)
       {
         Qn++;
         (*Q).data[Qn].e=*(Qe+(i-1)*l+j-1);
         (*Q).data[Qn].i=i;
         (*Q).data[Qn].j=j;
       }
   free(Qe);
   (*Q).tu=Qn;
   return OK;
 }

 Status TransposeSMatrix(TSMatrix M,TSMatrix *T)
 { /* 求稀疏矩陣M的轉置矩陣T。算法5.1 */
   int p,q,col;
   (*T).mu=M.nu;
   (*T).nu=M.mu;
   (*T).tu=M.tu;
   if((*T).tu)
   {
     q=1;
     for(col=1;col<=M.nu;++col)
       for(p=1;p<=M.tu;++p)
         if(M.data[p].j==col)
         {
           (*T).data[q].i=M.data[p].j;
           (*T).data[q].j=M.data[p].i;
           (*T).data[q].e=M.data[p].e;
           ++q;
         }
   }
   return OK;
 }

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
国产成人免费xxxxxxxx| 亚洲图片欧美视频| 日韩免费观看高清完整版在线观看| 91视频观看免费| 不卡的av网站| 91亚洲永久精品| 色伊人久久综合中文字幕| 日本韩国一区二区三区视频| 成+人+亚洲+综合天堂| 91视频观看视频| 色菇凉天天综合网| 欧美视频一区在线| 欧美日韩高清在线播放| 欧美精品国产精品| 精品国产一区二区精华| 久久综合中文字幕| 国产精品国产三级国产普通话蜜臀| 亚洲国产成人午夜在线一区| 国产精品午夜在线观看| 亚洲三级久久久| 亚洲韩国一区二区三区| 免费看欧美美女黄的网站| 久久激情综合网| 成人av高清在线| 精品视频999| 久久久欧美精品sm网站| 亚洲欧洲日本在线| 婷婷夜色潮精品综合在线| 久久国产成人午夜av影院| 成人激情校园春色| 欧美日韩国产高清一区二区三区 | 91亚洲永久精品| 欧美日韩亚洲综合在线 欧美亚洲特黄一级 | 7777精品伊人久久久大香线蕉完整版| 欧美放荡的少妇| 日本一区二区三区高清不卡| 亚洲卡通动漫在线| 久久99国内精品| 色噜噜狠狠成人网p站| 欧美成人性福生活免费看| 亚洲欧洲日韩av| 精品亚洲成a人| 欧洲国内综合视频| 国产视频一区不卡| 日韩精品一级中文字幕精品视频免费观看| 成人免费高清视频| 日韩一区二区中文字幕| 国产精品你懂的在线| 日韩vs国产vs欧美| 色哟哟日韩精品| 久久婷婷国产综合精品青草| 亚洲成人动漫一区| 97精品电影院| 中文字幕的久久| 久久99热狠狠色一区二区| 99精品国产视频| 久久精品亚洲麻豆av一区二区| 亚洲一区二区三区三| av一二三不卡影片| 国产午夜精品一区二区| 久久精品国产秦先生| 69堂国产成人免费视频| 不卡视频免费播放| 国产盗摄一区二区| 成人成人成人在线视频| 久久亚洲免费视频| 蜜臀久久99精品久久久久久9 | 亚洲精品你懂的| av成人免费在线观看| 国产日韩亚洲欧美综合| 久久精品国产一区二区三| 欧美久久久一区| 亚洲成人自拍偷拍| 欧美视频在线观看一区二区| 亚洲成人三级小说| 欧美日韩美女一区二区| 99re视频精品| 欧美日韩视频第一区| 99久久99久久久精品齐齐| 懂色中文一区二区在线播放| 国产一区视频导航| 丁香天五香天堂综合| 风间由美一区二区三区在线观看| 韩国视频一区二区| 国产传媒欧美日韩成人| 91在线观看污| 欧美大片在线观看一区二区| 国产精品你懂的在线| 亚洲h在线观看| 成人av电影在线网| 日韩一区二区三区视频| 亚洲激情六月丁香| 欧美自拍偷拍午夜视频| 欧美成人国产一区二区| 一区二区欧美视频| 国产精品一区专区| 欧美久久一二区| 亚洲已满18点击进入久久| 激情久久五月天| 欧美高清视频在线高清观看mv色露露十八 | 欧美三区在线视频| 一区二区欧美视频| 91福利在线免费观看| 亚洲免费毛片网站| 99精品国产视频| 一区二区日韩av| 91蜜桃在线观看| 丝袜美腿亚洲一区二区图片| 欧美色成人综合| 日韩高清在线一区| 日韩午夜小视频| 国模套图日韩精品一区二区| 久久久久国产成人精品亚洲午夜 | 奇米色一区二区| 欧美激情综合在线| 91国偷自产一区二区开放时间 | 日本aⅴ亚洲精品中文乱码| 日韩精品一区二区三区中文不卡| 精品亚洲国内自在自线福利| 久久久久久9999| 欧美日韩aaaaaa| 成人免费三级在线| 午夜视黄欧洲亚洲| 国产精品美女久久久久久2018| 91视频免费观看| 狂野欧美性猛交blacked| 中文字幕av一区二区三区| 制服丝袜国产精品| 成人av在线影院| 国产在线看一区| 久久精品99久久久| 婷婷激情综合网| 国产精品电影一区二区三区| 精品久久久久久综合日本欧美 | 久久久久久久久97黄色工厂| 在线不卡免费欧美| 欧美日韩亚洲高清一区二区| 91丨九色丨尤物| 色视频成人在线观看免| 91麻豆福利精品推荐| 国产99久久久国产精品免费看| 九色porny丨国产精品| 欧美aaaaa成人免费观看视频| 亚洲成人7777| 亚洲第一精品在线| 日韩高清不卡一区二区三区| 亚洲成a人片在线观看中文| 亚洲成人免费视频| 丝袜亚洲另类欧美综合| 免费在线一区观看| 成人夜色视频网站在线观看| 成人综合在线视频| 在线看不卡av| 91精品国产综合久久精品app| 欧美日韩精品电影| 久久综合丝袜日本网| 亚洲视频免费观看| 日日摸夜夜添夜夜添精品视频| 日本欧美一区二区在线观看| 国产成人综合在线| 欧美日韩不卡一区二区| 欧美mv和日韩mv的网站| 亚洲人成小说网站色在线| 亚洲综合免费观看高清在线观看| 午夜精品久久久久久久蜜桃app| 激情综合一区二区三区| 在线一区二区观看| 中文字幕 久热精品 视频在线| 日韩精品国产欧美| 色8久久人人97超碰香蕉987| 精品国产乱码久久久久久1区2区| 国产精品成人午夜| 精一区二区三区| 日韩你懂的在线播放| 日韩精品午夜视频| 欧美在线免费播放| 亚洲精品免费播放| 91香蕉视频在线| 亚洲日本成人在线观看| 99久久精品免费看国产免费软件| 久久久久久一级片| 国产成人免费高清| 国产精品丝袜黑色高跟| 成人综合婷婷国产精品久久免费| 久久老女人爱爱| 国产一区二区视频在线播放| 久久久99精品久久| 国产91色综合久久免费分享| 久久美女高清视频| 国产ts人妖一区二区| 一区二区在线看| 欧美电影免费观看高清完整版在线 | 国产成人亚洲综合a∨婷婷| 欧美成人一区二区| 国产成人精品综合在线观看| 综合在线观看色| 日韩亚洲欧美在线观看| 国产盗摄一区二区| 五月天丁香久久| 国产欧美日韩中文久久|