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

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

?? echelon64.h

?? This CD-ROM is distributed by Kluwer Academic Publishers with ABSOLUTELY NO SUPPORT and NO WARRANTY
?? H
字號:
// class  ECHELON will generate matrix with row-reduced-echelon form

#include <iostream.h>
#include <math.h>

const int MAX_ROW = 58;
const int MAX_COL = 65;

class ECHELON64

{
 private:
  int msgm[MAX_ROW][MAX_COL];  // initial matrix
  int kk;    // matrix row.
  int nn;    // matrix column.
  int Right[MAX_COL];  // Right is the index of the rightmost nonzero entry.
  int Left[MAX_COL];	   // Left is the index of the leftmost nonzero entry.
  void toMSGM();
  int echelon[MAX_ROW][MAX_COL];

 public:
  ECHELON64(int[][65], int, int );
  void Find_L_R(int[], int, int *, int *);
  int* get_Left();
  bool IsMatch(int * , int * );
  void display_echelon();
  void Modify();// to sort the rows that can be row reduced form
  void set_echelon();
  int* get_echelon();
  void display_MSGM();//for obtain the state complexity profile
  int* statecomplex();
 
};

ECHELON64::ECHELON64(int G_Matrix[][65], int _k, int _n)
{
  kk = _k;    nn = _n; 
  for(int i = 0; i < kk; i++) {
    for(int j = 0; j < nn; j++) {
      msgm[i][j] = G_Matrix[i][j];
    echelon[i][j] = 0;
    }
  }
  for(int ii = 0; ii < kk; ii++)
    {
      Left[ii] = 0; Right[ii] = 0;
    }
}

void ECHELON64::Find_L_R(int G[], int row, int *L, int *R) //to obtain the leftmost index and rightmost index
{
  for(int i = 0; i < nn; ++i)
    {
      if (G[i] == 1) {
	L[row] = i;
	break;
      }
    }

  for(int j = nn - 1; j >= 0; --j)
    {
      if (G[j] == 1)
	{
	  R[row] = j;
	  break;
	}
    }
}

bool ECHELON64::IsMatch(int *L, int *R)
{
  for(int i = 0; i < kk; i++)
    {
      for(int j = i + 1; j < kk; j++)
	{
	  if((L[i] == L[j])  || (R[i] == R[j]) )
	    {
	      return true;
	      break;
	    }
	}
    }
  return false;
}

	
void ECHELON64::toMSGM() // if it is successful to find a pair of Gi and Gj such that satisfy the above the function, then do either Gi=Gi+Gj or Gj=Gi+Gj

{
  int i, j;

  for(i = 0; i < kk; i++)
    Find_L_R(msgm[i], i, Left, Right);
  while(IsMatch(Left, Right))
    
    {
      for ( i = 0; i < kk; i++)
	{ 
	  for (j = i + 1; j < kk; j++)
	    {
	      if ( Left[i] == Left[j] )
		{
		  if ( Right[i] >= Right[j] )
		    {
		      for(int n1 = 0; n1 < nn; n1++)
			msgm[i][n1] = msgm[i][n1] ^ msgm[j][n1];
		      Find_L_R(msgm[i], i, Left, Right);
		    }
		  else
		    {
		      for(int n1 = 0; n1 < nn; n1++)
			msgm[j][n1] = msgm[i][n1] ^ msgm[j][n1];
		      Find_L_R(msgm[j], j, Left, Right);
		    }	
		}	
	      else
		{
		  if(Right[i] == Right[j]){
		    if ( Left[i] >= Left[j] )
		      {	
			for(int n2 = 0; n2 < nn; n2++)
			  msgm[j][n2] = msgm[i][n2] ^ msgm[j][n2];
			Find_L_R(msgm[j], j, Left, Right);
		      }
		    else
		      {
			for(int n2 = 0; n2 < nn; n2++)
			  msgm[i][n2] = msgm[i][n2] ^ msgm[j][n2];
			Find_L_R(msgm[i], i, Left, Right);
		      }
		    
		  }
		}
	    }
	}
    }
}
void ECHELON64::Modify() // sort the MSGM by the order of Left(row), which is the index of the leftmost nonzero entry of Gi
{
  int numk=0, hold[58][65];
  int i, j;
  
  toMSGM();
  
  for(i=0; i < nn; i++)
    {
      for( j=0; j < kk; j++)
	{
	  if(Left[j] == i)
	    {
	      for(int m=0; m < nn; m++)
		hold[numk][m] = msgm[j][m];
	      numk++;
	      break;
	    }
	}
    }
  for(i=0; i < kk; i++)
    for(j=0; j < nn; j++)
      msgm[i][j] = hold[i][j];
}

void ECHELON64:: set_echelon() //modify the sorted Generated Matrix ( as leftmost indices:refer to the result in the end) to the row-reduced-echelon (systematic-like Generation Matrix), then the trellis can be  drawed followed by this row-reduced-echelon Matrix( systematic like G)
{ 
  int i,j;
  Modify();
  for(i=0; i < kk; i++)
    Find_L_R(msgm[i], i, Left, Right);
  
  for(i=0; i < kk; i++)
    {
      for(j=i-1; j >= 0; j--)
	{
	  if(msgm[j][Left[i]] == 1)
	    for ( int n1=0; n1 < nn; n1++)
	      msgm[j][n1] = msgm[i][n1] ^ msgm[j][n1];
	  
	}
    }
  for(i = 0; i < kk; i++)
    for(j = 0; j < nn; j++)
      echelon[i][j] = msgm[i][j];
}
int* ECHELON64::get_echelon()
{
  set_echelon();
  return &echelon[0][0];
}

int* ECHELON64::get_Left()
{  
  for(int i = 0; i < kk; i++)
    {
      for(int j = 0; j < nn; j++)
	{
	  if( echelon[i][j] == 1 )
	    {
	      Left[i] = j;
	      break;
	    }
	}
    }
  return Left;
}

void ECHELON64::display_echelon() 
{   
  set_echelon();
  for(int i = 0; i < kk; i++)
   {
      for(int j = 0; j < nn; j++)
  	cout << echelon[i][j] << " ";
      cout << "\n";
   }
}
void ECHELON64::display_MSGM()//for obtaining state complexity profile

{
  Modify();
  /*  for(int i = 0; i < kk; i++) */
  /*      { */
  /*        for(int j = 0; j < nn; j++) */
  /*  	cout << msgm[i][j] << " "; */
  /*        cout << "\n"; */
  /*      } */
}
int* ECHELON64::statecomplex()
{
  int statecomplex_file[65];
  int i, j, k;
  int past[65], future[65];
  int node_number = 0; 
  
  for( j = 0; j < kk; j++)
    Find_L_R(msgm[j], j, Left, Right);
  
  for ( i = 0; i < nn; i++)
    {
      past[i] = 0;
      future[i] = 0;
    }
  for ( i = 0; i < nn; i++)
    {
      for ( j = 0; j < kk; j++)
	{
	  if ( Right[j] <= i)
	    past[i]++;
	}
      for ( k = 0; k < kk; k++)
	{
	  if (Left[k] >= i+1)
	    future[i]++;
	}
    }
  statecomplex_file[0] = 0;
  for (i = 1; i <= nn; i++)
    {
      statecomplex_file[i] = kk - past[i-1]-future[i-1];
    }
 
  return &statecomplex_file[0];
}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
亚洲18女电影在线观看| 成人av中文字幕| 欧美精品在线观看播放| 亚洲成年人网站在线观看| 欧美片在线播放| 久草中文综合在线| 久久久噜噜噜久久中文字幕色伊伊| 麻豆精品一区二区综合av| 精品国产免费人成在线观看| 国产裸体歌舞团一区二区| 国产欧美一区二区精品秋霞影院| 成人av中文字幕| 一区二区三区欧美日韩| 欧美一区二区视频在线观看2022| 激情国产一区二区| 亚洲欧美一区二区在线观看| 欧美少妇一区二区| 美女久久久精品| 国产精品第五页| 欧美高清精品3d| 国产成人综合亚洲网站| 亚洲高清三级视频| 26uuu国产一区二区三区| 91一区二区在线| 天堂va蜜桃一区二区三区漫画版| 精品捆绑美女sm三区| 99久久精品一区| 日本成人在线看| 久久久久高清精品| 欧美视频精品在线| 成人动漫视频在线| 日本成人中文字幕| 亚洲色大成网站www久久九九| 日韩欧美久久一区| 91福利在线免费观看| 久久成人久久鬼色| 亚洲一级二级在线| 欧美国产成人精品| 日韩一级免费一区| 91精品福利视频| 国产精品综合久久| 蜜臀久久99精品久久久画质超高清| 国产精品国产三级国产| 精品不卡在线视频| 欧美二区乱c少妇| 91麻豆国产香蕉久久精品| 麻豆国产精品官网| 午夜影院在线观看欧美| 国产精品剧情在线亚洲| 精品三级av在线| 7777精品伊人久久久大香线蕉 | 免费人成网站在线观看欧美高清| 成人欧美一区二区三区| 久久久久国产精品厨房| 精品久久一区二区| 91精品国产欧美一区二区18| 色菇凉天天综合网| 99视频在线观看一区三区| 国产一区二区免费看| 琪琪一区二区三区| 亚洲国产日韩精品| 亚洲乱码国产乱码精品精的特点| 亚洲国产精品99久久久久久久久| 精品国产污污免费网站入口| 日韩视频一区二区在线观看| 欧美另类z0zxhd电影| 欧美日韩在线不卡| 欧美无乱码久久久免费午夜一区 | 在线观看av不卡| 91亚洲精品乱码久久久久久蜜桃| 国产成人午夜精品5599 | 国产亚洲一区二区三区在线观看| 91精品国产福利| 91精选在线观看| 91精品婷婷国产综合久久竹菊| 欧美日韩不卡一区| 555夜色666亚洲国产免| 91精品久久久久久久91蜜桃| 制服丝袜一区二区三区| 欧美一区二区三区免费| 日韩欧美国产麻豆| 精品久久久久久久久久久院品网 | 日精品一区二区三区| 午夜精品在线视频一区| 爽好多水快深点欧美视频| 日韩国产精品久久| 精品一区二区三区久久| 国产精品亚洲午夜一区二区三区| 国产99一区视频免费| 不卡电影一区二区三区| 一本色道久久综合亚洲精品按摩| 色综合久久99| 这里是久久伊人| www国产成人| 中文字幕av一区 二区| 亚洲图片另类小说| 性做久久久久久久久| 美女尤物国产一区| 豆国产96在线|亚洲| 91丨九色丨蝌蚪富婆spa| 欧美系列亚洲系列| 日韩精品一区二区三区中文不卡 | 欧美国产禁国产网站cc| 一区二区三区波多野结衣在线观看| 午夜精品福利一区二区三区蜜桃| 免费av网站大全久久| 欧美日韩一二三区| 欧美一区二区三区播放老司机| 久久久www免费人成精品| 亚洲免费在线视频| 美女脱光内衣内裤视频久久影院| 大尺度一区二区| 欧美色偷偷大香| 久久综合色之久久综合| 一区二区三区免费观看| 久久精品国产精品亚洲精品| 成人h动漫精品一区二区| 4hu四虎永久在线影院成人| 国产亚洲一区字幕| 午夜电影久久久| 成人教育av在线| 欧美肥妇free| 最新热久久免费视频| 美女视频黄频大全不卡视频在线播放| kk眼镜猥琐国模调教系列一区二区| 欧美三片在线视频观看 | 中文字幕一区在线观看| 青青草国产成人99久久| 99久久精品一区| 久久久久久一级片| 亚洲aaa精品| 91一区二区在线观看| 久久欧美中文字幕| 午夜伊人狠狠久久| 99精品视频在线免费观看| 精品理论电影在线观看| 亚洲二区在线观看| 99久久久久久| 国产日韩综合av| 久久99九九99精品| 欧美三级电影在线观看| 国产精品欧美经典| 激情综合一区二区三区| 欧美喷水一区二区| 亚洲一区二区三区四区的 | 久久成人免费网站| 91麻豆精品国产91久久久久久久久 | 国内成人免费视频| 欧美日韩国产中文| 亚洲欧美视频在线观看| 丰满少妇在线播放bd日韩电影| 日韩视频123| 日韩av电影一区| 欧美久久免费观看| 亚洲成人福利片| 91成人免费在线| 亚洲精品成人精品456| 99视频一区二区| 中文字幕一区二区三区在线播放 | 亚洲sss视频在线视频| 一本久久综合亚洲鲁鲁五月天 | yourporn久久国产精品| 欧美精品一区二区高清在线观看| 美女视频免费一区| 精品少妇一区二区三区日产乱码| 久久99日本精品| 精品91自产拍在线观看一区| 久久精品国产在热久久| 欧美变态tickling挠脚心| 久99久精品视频免费观看| 精品国产123| 国产成人免费高清| 国产精品入口麻豆九色| 99精品国产热久久91蜜凸| 亚洲视频一二三| 在线亚洲一区观看| 天堂精品中文字幕在线| 欧美videossexotv100| 国产乱理伦片在线观看夜一区| 精品国产91亚洲一区二区三区婷婷 | 欧美日韩色综合| 天堂久久久久va久久久久| 欧美videossexotv100| 成人午夜视频福利| 亚洲精品中文在线观看| 欧美日韩aaa| 激情综合五月天| 国产精品欧美精品| 日本精品一级二级| 日韩高清在线不卡| 久久久久久电影| 91网上在线视频| 蜜臀久久99精品久久久久宅男| 久久一区二区三区四区| 99精品视频在线免费观看| 婷婷国产在线综合| 国产欧美一区二区精品婷婷| 欧美午夜影院一区| 国产毛片精品视频| 夜夜揉揉日日人人青青一国产精品|