zoukankan      html  css  js  c++  java
  • .net下纯代码实现求两个集合的笛卡尔积

    使用环境:

      1、.net 3.5,因为要使用linq(为什么用LINQ,因为小弟算法比较差,不会写算法直接实现.......)

      2、求两个list<string>的笛卡尔积,结果为另一个list<string>(别的似乎也可以吧,没实验过)

    开始:

      个人感觉其实原理很简单,就是使用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,如果链接的两个数据类型属于数字,还可以把“+”号改成相应的运算符

     运行结果如下:

    代码虽然简单,不过中间实现的原理确是有点复杂,小弟也是参考了网上的文章,不过如果仅仅是使用的话这应该就已经够了

    有兴趣的朋友也可以研究下

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

    文笔又限,欢迎拍砖

    好了,结束  嘿嘿

  • 相关阅读:
    文件操作
    xadmin的使用
    Vue
    Redis
    Django
    python小结
    利用线程池和回调函数爬虫
    drf-基表、断关联表关系、级联删除、正方向查询、子序列化
    drf序列化
    drf初识
  • 原文地址:https://www.cnblogs.com/li0803/p/1830054.html
Copyright © 2011-2022 走看看