队列组合(栈和队列) ╰半橙微兮° 2022-03-31 07:42 428阅读 0赞 ### ### 题目描述 设计算法以求解从集合\{1…n\}中选取k(k<=n)个元素的所有组合。例如,从集合\{1…4\}中选取2个元素的所有组合的输出结果为:1 2,1 3,1 4,2 3, 2 4,3 4。 输入 4 2 输出 1 2 1 3 1 4 2 3 2 4 3 4 样例输入 Copy 3 2 样例输出 Copy 1 2 1 3 2 3 ##### 分析: ##### 本题虽然说是用栈和队列来做,但可惜本人太菜。只会用回溯来做。 #include"stdio.h" #include"string.h" int n,k; int a[10000],vis[10000]; void dfs(int j,int digit[]) { int i; if(j==k+1) { for(i=1; i<j-1; i++) printf("%d ",digit[i]); printf("%d\n",digit[i]); return ; } else { for(i=j; i<=n; i++) { if(vis[i]==1&&digit[j-1]<a[i]) { digit[j]=a[i]; vis[i]=0; dfs(j+1,digit); vis[i]=1; } } } } int main() { int i,j; int digit[10000]; while(~scanf("%d%d",&n,&k)) { for(i=1; i<=n; i++) { a[i]=i; digit[i]=0; vis[i]=1; } j=1; dfs(j,digit); } }
相关 js:数组实现队列和栈、栈实现队列、队列实现栈 *目录** 一、利用数组结构实现大小固定的队列和栈 二、仅用队列结构实现栈结构 三、仅用栈结构实现队列结构 四、总结 ------------------... 悠悠/ 2024年04月17日 05:55/ 0 赞/ 246 阅读
相关 栈和队列 20.[\[LeetCode\] Valid Parentheses 验证括号][LeetCode_ Valid Parentheses] 给定一个只包括 `'('`,`') Dear 丶/ 2024年02月19日 13:28/ 0 赞/ 196 阅读
相关 栈和队列 > 栈 是限定 仅在表尾 进行插入和删除操作的线性表 > > 队列 是只允许 在一端 进行 插入 操作、而在 另一端 进行 删除 操作的线性表 第一部分 相关定义 秒速五厘米/ 2023年07月14日 15:57/ 0 赞/ 258 阅读
相关 栈和队列 物理结构与逻辑结构 把物质层面的人体比作数据存储的物理结构,那么精神层面的人格则是数据存储的逻辑结构。逻辑结构是抽象的概念,它依赖于物理结构而存在。 ![在这里插入图 柔光的暖阳◎/ 2023年07月02日 03:24/ 0 赞/ 141 阅读
相关 栈和队列 栈是限定在表尾进行插入或删除的线性表.因此,对于栈来说,表尾端有其特殊的含义,称为`栈顶`,相应地,表头端称为`栈底`.不含任何元素的栈称为空栈. 和线性表类似,栈也 ゝ一纸荒年。/ 2023年07月01日 12:56/ 0 赞/ 102 阅读
相关 实现栈和队列、用栈实现队列,用队列实现栈。 一、实现一个栈 就是一个指针下标,入栈加,出栈减。 / 我的栈 / public class MySt 一时失言乱红尘/ 2023年02月16日 12:15/ 0 赞/ 150 阅读
相关 栈和队列 栈: package Suan; public class Stack { private int size; 迈不过友情╰/ 2022年06月18日 07:54/ 0 赞/ 303 阅读
相关 队列组合(栈和队列) 题目描述 设计算法以求解从集合\{1…n\}中选取k(k<=n)个元素的所有组合。例如,从集合\{1…4\}中选取2个元素的所有组合的输出结果为:1 2,1 3,1 ╰半橙微兮°/ 2022年03月31日 07:42/ 0 赞/ 429 阅读
还没有评论,来说两句吧...