`
stevenzuo
  • 浏览: 12463 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

Java-递归算法:N选M组合,过滤重复的

阅读更多
package com.xxx.xxxx.template.service;

import java.util.Scanner;

/**
 * 测试类TiGuiTest
 */
public class TiGuiTest {
	static int row;
	public static void main(String args[]){
	System.out.print("Please input n:");//这里n取8
	Scanner scan1=new Scanner(System.in);
	int n=scan1.nextInt();
	  
	System.out.print("Please input r:");//这里r取5
	Scanner scan2=new Scanner(System.in);
	int r=scan2.nextInt();
	int[] list=new int[n];
	for(int i=0;i<n;i++){
	list[i]=n-i;
	}
	combination(list,r,0,n);
	  }
	/**
	* 递归函数
	*/
	  static void combination(int[] list,int r,int low,int n){
	  
	  if(low<r){
	  for(int j=low;j<n;j++){
	  if((low>0&&list[j]<list[low-1])||low==0){
	  int temp=list[low];
	  list[low]=list[j];
	  list[j]=temp;
	  combination(list,r,low+1,n);
	  temp=list[low];
	  list[low]=list[j];
	  list[j]=temp;
	  }
	  }
	  }
	  if(low==r){
	  for(int i=0;i<r;i++){
	  System.out.print(list[i]+" ");
	  }
	  System.out.println(" ");
	  }	
	  }
}
分享到:
评论
1 楼 columbia7311 2017-03-28  
楼主有没有自己运行过,结果错了吧

相关推荐

    Java高级应用程序综合实训_具体实施过程.docx

    - 技术要点: GUI编程、递归算法。 7. **动物换位游戏**: - 功能: 左右两组动物交换位置。 - 技术要点: 图形用户界面设计、算法设计。 8. **走迷宫游戏**: - 功能: 寻找迷宫的出口。 - 技术要点: GUI编程、图...

    使用递归算法在指定目录下查找文件

    递归算法是一种以自身为解决手段的方法,通过重复调用自身来解决问题或计算数据。在文件系统中,递归常用于遍历目录结构,查找满足特定条件的文件。 首先,我们需要理解文件系统的目录结构。在大多数操作系统中,...

    fp-growth-algorithm:FP-增长算法在数据挖掘中的实现

    FP-增长算法是一种高效的数据挖掘方法,主要用于关联规则学习,特别是在大规模数据集上。这个算法由Han、Pei和Jianming在2000年提出,它解决了Apriori算法在处理大量数据时的效率问题。在Java环境中,我们可以利用...

    自适应过滤法的java实现

    在Java编程环境中实现自适应过滤法,我们可以构建一个名为`AdaptiveFilter`的类来封装相关的算法逻辑。 首先,我们需要理解自适应过滤法的基本原理。它通常基于线性最小均方误差(LMS)算法或者更复杂的递归最小...

    word源码java-leetcode_solution:leetcode_solution

    word源码java 算法与数据结构参考资料与典型题目 总览 训练准备和复杂度分析 复杂度分析 数组、链表、跳表 LRU Cache - Linked list: Redis - Skip List:、 Array 实战题目 (高频老题) Linked List 实战题目 实战...

    java6.0源码-DupsFinder:在指定文件夹中搜索重复文件

    递归搜索指定文件夹中的重复文件。 该项目的目标是创建一个最快的 Java 实现,同时保持代码干净和易于阅读。 用 Java 编写,没有额外的依赖。 需要 Java 8 和 Maven 来构建。 SHA-1 用作散列算法。 构建并运行 签出...

    java的算法大全集结免费.zip

    Java算法大全集结免费.zip是一个包含了丰富Java算法资源的压缩包,旨在帮助开发者深入理解和掌握Java编程中的各种算法。本文将详细解析其中可能涵盖的关键知识点,包括基础算法、数据结构、排序算法、查找算法以及在...

    多模式匹配算法研究(原理+java实现)

    ### 多模式匹配算法研究(原理+Java实现) #### 概述 多模式匹配算法,作为文本处理领域的重要工具,广泛应用于诸如入侵检测系统(IDS)、计算机病毒检测、包过滤防火墙系统等领域。传统的单模式匹配算法,如Brute...

    java算法题 : 数组相关问题

    本篇将深入探讨Java中的数组及其在算法中的应用。 一、数组的定义与初始化 在Java中,数组可以被声明为任何基本数据类型(如int、char)或引用类型(如自定义类)。数组的声明通常包含以下三部分:类型、数组名和...

    数据结构 递归和流 算法

    在IT领域,特别是计算机科学和软件工程中,数据结构、递归和算法是核心概念,它们构成了编程的基础。本文将详细探讨这些主题,尤其是递归的运用。 首先,我们要了解什么是数据结构。数据结构是组织和存储数据的方式...

    算法

    - 在软件开发中,算法用于优化性能,如搜索引擎的排序算法、推荐系统的协同过滤算法。 - 数据挖掘和机器学习中,如KNN、SVM、决策树等算法的实现。 - 并行和分布式计算领域,如MapReduce模型用于大规模数据处理。...

    Java 实现 Apriori 算法

    **Java实现Apriori算法详解** Apriori算法是一种经典的关联规则学习算法,主要用于发现大量数据集中的频繁项集和强关联规则。在电子商务、市场篮子分析、医学诊断等领域有着广泛的应用。Java作为一种跨平台的编程...

    Project-2---Even-Fibonacci-numbers:项目2的Java源代码-java project source code

    该项目名为“Project-2---Even-Fibonacci-numbers”,它是一个Java编程项目,专注于生成并处理斐波那契数列中的偶数项。斐波那契数列是计算机科学和数学中的一个经典概念,它的每个数字是前两个数字的和。在数列中,...

    java高级工程师面试总结

    ### Java高级工程师面试总结 #### Java基础 - **Hashtable和HashMap的区别**: - `Hashtable`是线程安全的,而`HashMap`不是。这意味着在多线程环境中使用`Hashtable`时无需额外的同步措施,但这也使得其性能较低...

    Programmers-Algorithm:程序员算法

    - **递归**:理解递归的基本概念,如递归定义、终止条件、递归调用过程,掌握常见的递归算法,如阶乘计算、汉诺塔、八皇后问题等。 - **分治法**:将大问题分解为小问题解决,如快速排序、归并排序、大整数乘法等...

    微软等公司数据结构+算法面试题系列

    - 时间复杂度:衡量算法运行时间随输入规模增长的速度,了解O(n)、O(n log n)、O(n²)等大O记法。 - 空间复杂度:衡量算法所需的内存空间,同样使用大O记法进行分析。 4. **编程基础**: - 熟练掌握至少一种编程...

    java实现递归文件列表的方法

    在Java编程中,有时候我们需要遍历一个目录及其子目录下的所有文件,这个过程通常使用递归算法来实现。本篇文章将详细解释如何使用Java实现递归文件列表的方法,以便于遍历指定目录下的所有文件。 首先,我们来看...

    毕业设计-路径推荐算法的设计与实现(java版本).zip

    7. **数据结构与算法实现**:Java编程语言中,对这些算法的实现可能涉及到ArrayList、LinkedList、HashMap等数据结构,以及递归、迭代等编程技巧。 8. **用户界面(UI)设计**:一个完整的系统可能还包括用户交互...

    Java计算工作日

    在Java编程中,计算工作日是一项常见的任务,特别是在企业级应用中,如人力资源管理、项目计划和财务系统等。这个任务通常涉及到日期处理和...总之,理解和掌握Java的日期处理以及递归算法对于解决这类问题至关重要。

    GPS漂移的处理算法

    ### GPS漂移的处理算法详解 #### 引言 在当今全球定位系统(GPS)广泛应用的时代,无论是导航、定位还是时间同步,GPS都扮演着至关重要的角色。然而,由于多种因素的影响,GPS信号可能会出现误差,其中一种常见的...

Global site tag (gtag.js) - Google Analytics