.net下純代碼實現求兩個集合的笛卡爾積

使用環境:html

一、.net 3.5,由於要使用linq(爲何用LINQ,由於小弟算法比較差,不會寫算法直接實現.......)算法

二、求兩個list的笛卡爾積,結果爲另外一個list(別的彷佛也能夠吧,沒實驗過)ide

 

開始:動畫

我的感受其實原理很簡單,就是使用LINQ來模仿SQL裏面的FROM語句來實現對兩個集合求笛卡爾積,直接上代碼吧網站

 

代碼
            List < string >  redSource  =   new  List < string >  {  " 01 " " 02 " " 030 "  };
            List
< string >  blueSource  =   new  List < string >  {  " 01 " " 02 " " 030 "  };
            IEnumerable
< string >  result  =  from red  in  redSource from blue  in  blueSource select red  +  blue;
            List
< string >  resultColor  =  result.ToList < string > ();

 這個連接的是兩個string,若是連接的兩個數據類型屬於數字,還能夠把「+」號改爲相應的運算符spa

 運行結果以下:.net

代碼雖然簡單,不過中間實現的原理確是有點複雜,小弟也是參考了網上的文章,不過若是僅僅是使用的話這應該就已經夠了3d

有興趣的朋友也能夠研究下code

http://morganchengmo.spaces.live.com/blog/cns!9950CE918939932E!3822.entryorm

 

文筆又限,歡迎拍磚

 

好了,結束  嘿嘿

 

 

 

做者: Hundre 發表於 2010-09-18 11:32 原文連接

評論: 2 查看評論 發表評論

最新新聞:
· Debian 6.0「Squeeze」發佈(2011-02-06 11:17)
· 傳諾基亞將進行管理層重組 多名高管將離職(2011-02-06 11:15)
· 即將舉辦超級碗的Cowboys體育場在Google Earth裏3D化(2011-02-06 11:07)
· Android 3.0 Honeycomb 炫麗蜂巢開機動畫(2011-02-06 10:57)
· Google 發佈 Contracts for Java 開源項目(2011-02-06 10:47)

編輯推薦:無意插柳:Gmail之父,FriendFeed創始人談人生偶然性

網站導航:博客園首頁  個人園子  新聞  閃存  小組  博問  知識庫

相關文章
相關標籤/搜索