蓝桥杯(3.1)

92. 递归实现指数型枚举

java 复制代码
import java.util.Scanner;

public class Main {
	static int N = 16;
	static int n;
	static int[] st = new int[N];	

	public static void dfs(int u) {
		if(u > n) {
			for(int i=1;i<=n;i++) {
				if(st[i] == 1)
					System.out.print(i+" ");
			}
			System.out.println();
			return ;
		}
		
		st[u] = 2;
		dfs(u+1);
		st[u] = 0;		
		
		st[u] = 1;
		dfs(u+1);
		st[u] = 0;		
	}
	public static void main(String[] args) {
		Scanner sc = new Scanner(System.in);
		n = sc.nextInt();
		dfs(1);
	}
}

94. 递归实现排列型枚举

java 复制代码
import java.util.Scanner;

public class Main {
	static int N = 10;
	static int n;
	static int[] st = new int[N];	
	static boolean[] vis = new boolean[N];	

	public static void dfs(int u) {
		if(u > n) {
			for(int i=1;i<=n;i++) {
					System.out.print(st[i]+" ");
			}
			System.out.println();
			return ;
		}
		for(int i=1;i<=n;i++) {
			if(!vis[i]) {
				st[u] = i;
				vis[i] = true;
				dfs(u+1);
				st[u] = 0;
				vis[i] = false;
			}
		}
		
	}
	public static void main(String[] args) {
		Scanner sc = new Scanner(System.in);
		n = sc.nextInt();
		dfs(1);
	}
}

93. 递归实现组合型枚举

java 复制代码
import java.util.Scanner;

public class Main {
	static int N = 26;
	static int n;
	static int m;
	static int[] st = new int[N];	

	public static void dfs(int u,int start) {
		if(u > m) {
				for(int i=1;i<=m;i++) {
					System.out.print(st[i]+" ");
				}
				System.out.println();
				return ;
		}
		for(int i=start;i<=n;i++) {
				st[u] = i;
				dfs(u+1,i+1);
				st[u] = 0;
			}		
	}
	public static void main(String[] args) {
		Scanner sc = new Scanner(System.in);
		n = sc.nextInt();
		m = sc.nextInt();
		//u和start
		dfs(1,1);
	}
}
相关推荐
顾安r21 分钟前
11.15 脚本算法 加密网页
服务器·算法·flask·html·同态加密
前端小L37 分钟前
图论专题(四):DFS的“回溯”之舞——探寻「所有可能路径」
算法·深度优先·图论
司铭鸿40 分钟前
数学图论的艺术:解码最小公倍数图中的连通奥秘
运维·开发语言·算法·游戏·图论
元亓亓亓1 小时前
LeetCode热题100--39. 组合总和
算法·leetcode·职场和发展
2401_841495641 小时前
【LeetCode刷题】找到字符串中所有字母异位词
数据结构·python·算法·leetcode·数组·滑动窗口·找到字符串中所有字母异位词
橘颂TA1 小时前
【剑斩OFFER】算法的暴力美学——寻找数组的中心下标
算法·leetcode·职场和发展·结构与算法
py有趣1 小时前
LeetCode算法学习之鸡蛋掉落
学习·算法·leetcode
放羊郎1 小时前
机器人自主导航方案概述
人工智能·算法·机器人·slam·建图
冷徹 .2 小时前
Edu144 CD
c++·算法
一水鉴天2 小时前
整体设计 全面梳理复盘 之37 元级自动化引擎三体项目(Designer/Master/Transformer)划分确定 + 自用规划工具(增强版)
开发语言·算法·transformer·公共逻辑