日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > c/c++ >内容正文

c/c++

杨氏矩阵定义及其查找的实现C++

發布時間:2024/4/14 c/c++ 38 豆豆
生活随笔 收集整理的這篇文章主要介紹了 杨氏矩阵定义及其查找的实现C++ 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

  先介紹一下這個數據結構的定義,Young Tableau有一個m*n的矩陣,然后有一數組?a[k],?其中?k<=m*n?,然后把a[k]中的數填入?m*n?的矩陣中,填充規則為:

1.??每一行每一列都嚴格單調遞增(有其他的版本是遞減,其原理相同)。

2.??如果將a[k]中的數填完后,矩陣中仍有空間,則填入?

  舉例:

  這里主要給出楊氏矩陣的定義和查找

  方法:理由每一列,沒一行都是遞增的,我們從左上角開始查找,不斷的縮小矩陣的大小,最后只剩一1*1的矩陣。

  C++代碼:

1 #pragma once 2 //YoungTableau.h 3 #include <iostream> 4 class YoungTableau 5 { 6 public: 7 YoungTableau(int rows, int columns,int**newTable) 8 { 9 x = rows; //行數 10 y = columns; //列數 11 12 if (newTable!=NULL) 13 { 14 table = (int **)((new int[rows*columns])); 15 for (int i = 0; i < rows*columns; i++) 16 17 { 18 ((int*)table)[i] = ((int*)newTable)[i]; 19 std::cout << ((int*)table)[i] << std::endl; 20 } 21 22 } 23 24 }; 25 ~YoungTableau(); 26 private:int x; 27 private:int y; 28 private: int **table; 29 30 public: 31 void print_matrix(void) 32 { 33 std::cout <<x<<y << std::endl; 34 if (table != NULL) 35 { 36 for (int i = 0; i < x; i++) 37 for (int j = 0; j < y; j++) 38 std::cout << ((int*)table)[i*y+j]<<std:: endl; 39 } 40 } 41 public:int get_element(int rows, int columns,int*res) 42 { 43 if (res != NULL) 44 { 45 if (rows>=this->x || columns >= this->y) 46 { 47 *res = 0; 48 return -1; 49 } 50 else 51 { 52 *res = ((int*)table)[rows*y + columns]; 53 return 0; 54 } 55 } 56 else 57 { 58 *res = 0; 59 return -2; 60 } 61 } 62 private:bool IsEqualAtLeftTop(int data, int rownum, int columnnum) 63 { 64 if (this->table != NULL) 65 { 66 if (rownum >= x || columnnum >= y || (rownum == x - 1 && columnnum == 0 && data != ((int*)this->table)[rownum*y + columnnum])) 67 { 68 std::cout << "illgal column" << std::endl; 69 return false; 70 } 71 else if (data == ((int*)this->table)[rownum*y + columnnum]) 72 { 73 return true; 74 } 75 else if (data < ((int*)this->table)[rownum*y + columnnum]) 76 { 77 std::cout << "next column"<< std::endl; 78 if (columnnum == 0) 79 return false; 80 else 81 return IsEqualAtLeftTop(data, rownum, columnnum - 1); 82 } 83 else 84 { 85 std::cout << "next row" << std::endl; 86 if (rownum == x-1) 87 return false; 88 else 89 return IsEqualAtLeftTop(data, rownum+1, columnnum); 90 } 91 92 } 93 else 94 { 95 return false; 96 } 97 } 98 public:bool IsExistence(int data) 99 { 100 if (this->table != NULL) 101 { 102 /*for (int i = 0; i < x; i++) 103 for (int j = 0; j < y; j++) 104 { 105 if (data == ((int*)table)[i*y + j]) 106 return true; 107 } 108 return false;*/ 109 return IsEqualAtLeftTop(data, 0, y - 1); 110 } 111 return false; 112 } 113 114 }; 1 // Young_Tableau.cpp : 定義控制臺應用程序的入口點。 2 // 3 4 #include "stdafx.h" 5 #include "YoungTableau.h" 6 7 int _tmain(int argc, _TCHAR* argv[]) 8 { 9 int tmp_table[3][3] = 10 { 11 {1, 3, 4 }, 12 {2, 3, 6}, 13 {5, 8, 10} 14 }; 15 YoungTableau matrix(3,3,(int**)tmp_table); 16 matrix.print_matrix(); 17 int tmp = 0; 18 matrix.get_element(2,2,&tmp); 19 std::cout << tmp << std::endl; 20 21 if (matrix.IsExistence(5)==true) 22 std::cout <<"true"<< std::endl; 23 else std::cout << "false" << std::endl; 24 while (1); 25 return 0; 26 }

?

1 #include "stdafx.h" 2 #include "YoungTableau.h" 3 // YoungTableau.cpp : 類的實現 4 // 5 6 7 YoungTableau::~YoungTableau() 8 { 9 10 }

?

轉載于:https://www.cnblogs.com/guiguzhixing/p/5862808.html

超強干貨來襲 云風專訪:近40年碼齡,通宵達旦的技術人生

總結

以上是生活随笔為你收集整理的杨氏矩阵定义及其查找的实现C++的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 91国内产香蕉 | 欧美在线视频你懂的 | 精品视频一区二区在线观看 | 亚欧在线视频 | 又黄又色 | 超碰免费在线播放 | 黄色大片免费观看 | 浮生影视在线观看免费 | 欧美xxxx网站 | 国产女人被狂躁到高潮小说 | 性xxxx欧美老肥妇牲乱 | 国产一区高清 | 久久免费片 | 中文字幕视频免费 | 懂色aⅴ国产一区二区三区 亚洲欧美国产另类 | 无码人妻精品一区二区三区99日韩 | 四虎啪啪| 亚洲精品久久久久久 | 国产性xxxx高清 | 96在线观看 | 国产a线| 人妻巨大乳hd免费看 | 国产69精品久久久久999小说 | 色88久久久久高潮综合影院 | 台湾色综合 | 在线视频黄 | 91在线无精精品入口 | 欧美亚洲中文精品字幕 | 爱情岛论坛亚洲品质自拍 | 干美女av | 欧美亚色 | 噼里啪啦国语高清 | 亚洲精品久久久 | 大胸美女啪啪 | 亚洲vs天堂 | 国产小视频91 | 草草网址 | 最新中文字幕久久 | 国产免费一区二区三区四区五区 | 日韩avwww| 蜜臀av免费一区二区三区水牛 | 人人妻人人玩人人澡人人爽 | 男人的天堂视频在线观看 | 综合狠狠开心 | 91看片网页版 | 东京热一区二区三区四区 | 国产精品久久久久影院 | 日本高清有码 | 男人天堂久久久 | 国产一区二区中文字幕 | 桃谷绘里香番号 | 欧美人体做爰大胆视频 | 国产日韩欧美视频在线 | 欧美日韩激情一区二区 | 毛茸茸日本熟妇高潮 | 日韩阿v | 超碰97国产精品人人cao | 天堂中文资源在线观看 | 色婷婷精品国产一区二区三区 | 亚洲国产精品成人午夜在线观看 | 波多野结衣中文字幕一区二区三区 | 粉色视频免费观看 | 亚洲在线看片 | 欧美成人一区在线观看 | 男人天堂tv | 中文字幕日韩在线观看 | 九色91popny蝌蚪新疆 | 久久伊人五月天 | 自拍偷拍专区 | 日韩中文娱乐网 | 粉嫩一区二区三区 | 黄网免费观看 | 欧美激情在线一区 | 超碰2023 | 国产成人精品视频在线观看 | 992tv成人免费视频 | 成年人国产精品 | 无人在线观看的免费高清视频 | www.国产精品.com | 免费视频二区 | 中文字字幕码一二三区 | 黑人与亚洲人色ⅹvideos | 日韩免费在线视频 | 亚洲第一欧美 | 奇米婷婷 | 国产精品第2页 | 亚洲精品粉嫩小泬 | 一区二区日韩电影 | 一区二区不卡 | 玖玖在线播放 | 久久77 | 久久亚洲网| 婷婷亚洲综合五月天小说 | 青青青视频在线 | 九一国产视频 | 国产主播精品 | 亚洲色图视频在线观看 | 91羞羞网站 | 不卡一区在线 |