zoukankan      html  css  js  c++  java
  • 从数组中返回指定长度的子数组

          自己在一个搜索程序中遇到了这样一个问题:怎么从数组(集合)中返回指定长度的子数组(集合)。比如数组{1,2,3,4},现在要返回所有长度为n=2的子数组,即{1,2}{1,3}{1,4}{2,3}{2,4}{3,4}。如果这个n在写代码时就确定,那就用n层循环可以很简单的实现。但是,关键在于n是在程序运行时才知道的,这样就不能只能用循环了。

          想了几天后,才完全实现了这个功能。

          

    Code

    上面的算法,用到了递归,关键在于设置了一个临时变量List<int> one,每递归一个就在one中添加一个元素,直到one的Count==n。

    这是自己的想法,这个题目应该是很简单的,不知道有没有高手给出更简单的答案!!

  • 相关阅读:
    ASM:《X86汇编语言-从实模式到保护模式》1-4章:处理器,内存和硬盘基础
    Greedy:Paint Color(AOJ 0531)
    Match:DNA repair(POJ 3691)
    Match:Censored!(AC自动机+DP+高精度)(POJ 1625)
    Match:Keywords Search(AC自动机模板)(HDU 2222)
    BM算法和Sunday快速字符串匹配算法
    蓄水池抽样算法
    Match:Milking Grid(二维KMP算法)(POJ 2185)
    Match:Cyclic Nacklace(KMP的next数组的高级应用)(HDU 3746)
    KMP单模快速字符串匹配算法
  • 原文地址:https://www.cnblogs.com/xiangism/p/1561398.html
Copyright © 2011-2022 走看看