社区
MS-SQL Server
帖子详情
一个关于数字排列的问题?
sky2000
2000-02-16 09:19:00
请教一下各位网友:
我想将0-9中的任意六个数字按随机顺序排列, 要求不遗漏,不重复,如123456,653248(6个数字不重复出现)并输出到一个文件中去。请提供源程序, 最好是VFP的。
(这是一道考试题, 敬请帮忙,不胜感激!)
...全文
170
3
打赏
收藏
一个关于数字排列的问题?
请教一下各位网友: 我想将0-9中的任意六个数字按随机顺序排列, 要求不遗漏,不重复,如123456,653248(6个数字不重复出现)并输出到一个文件中去。请提供源程序, 最好是VFP的。 (这是一道考试题, 敬请帮忙,不胜感激!)
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
3 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
WHQ
2000-02-16
打赏
举报
回复
#include <stdio.h>
// N个数的全排列:
typedef void (*MyOutputFunc)(int numb, char out[]);
void Iterate(int n, char in[], char out[], int nmax, int& numb, MyOutputFunc f)
{
if( n == 0 )
{
f(numb++, out);
return;
}
for(int i = 0; i < nmax; i++)
{
if( in[i] != -1 )
{
out[nmax-n] = in[i];
in[i] = -1;
Iterate(n-1, in, out, nmax, numb, f);
in[i] = out[nmax-n];
}
}
}
void PrintP(int numb, char out[])
{
printf("[%08d]: %s\n", numb, out);
}
#define MAX 62
main()
{
char in[MAX+1], out[MAX+1];
int numb = 0;
for( int i = 0; i < MAX; i++ )
{
if( i < 26 ) in[i] = 'a'+i;
else if( i < 52 ) in[i] = 'A'+i-26;
else in[i] = '0'+i-52;
out[i] = -1;
}
in[i] = out[i] = 0;
Iterate(MAX, in, out, MAX, numb, PrintP);
printf("\nAll items are %d\n", numb);
return 0;
}
feng
2000-02-16
打赏
举报
回复
10个数字中取6个数字排列,有10!/4!种排列。可以用递归来实现。
char[] arrange(char[] myA,int K)
//返回数组MyA在K=k时的所有排列的数组.
{
char[] theA;
int count;
if(K=1)
//如果K=1,返回数组MyA.
return myA;
//否则,返回myA中每个数myA[i]和剩下的数在K=k-1夏的所有排列.
else
{
count=0;
for(int i=0;i<Length;i++)
//Length是myA中元素的个数.
//想办法取到它.
{
char[] restA;
char[] returnA;
restA=myA-i;
//restA是myA中除去第i个元素的数组.
//递归调用
//取restA在K-1时的所有组合.
returnA=arrange(restA,K-1);
for(int j=0;j<LengthOfReturnA;j++)
{
//myA中每个数myA[i]和returnA的排列
theA[count]=myA[i]+returnA[j];
count++;
}
}
return theA;
}
}
active
2000-02-16
打赏
举报
回复
for i1=0 to 9
for i2=0 to 9
for i3=0 to 9
for i4=0 to 9
for i5=0 to 9
for i6=0 to 9
区块链之Go语言设计模式
命令对象的等级结构中的对象的任何
排列
组合都是
一个
语言。 俺有
一个
《泡MM真经》,上面有各种泡MM的攻略,比如说去吃西餐的步骤、去看电影的方法等等,跟MM约会时,只要做
一个
Interpreter,照...
如何实现从M个
数字
选取N个
数字
排列
算法
在第一份工作结束的时候,还是个java小白,找工作的时候去面试,碰到
一个
算法题:从十个
数字
中选取八个
数字
排列
,重复算
一个
,一共有多少种可能?当时想了半天也没想出来,虽然是数学上的
排列
组合算法,但是还是想自己思考下解决方案。今天发一下自己的解决思路,思路很简单,适合初级程序员:1、假定max个数,抽取min个
数字
2、初始化
一个
组合为
数字
0-min3、固定min-1个
数字
,找出其中
一个
数字
的可替换可...
2022-01-07:下
一个
排列
。实现获取 下
一个
排列
的函数,算法需要将给定
数字
序列重新
排列
成字典序中下
一个
更大的
排列
(即,组合出下
一个
更大的整数)。 如果不存在下
一个
更大的
排列
,则将
数字
重新
排列
成
2022-01-07:下
一个
排列
。实现获取 下
一个
排列
的函数,算法需要将给定
数字
序列重新
排列
成字典序中下
一个
更大的
排列
(即,组合出下
一个
更大的整数)。 如果不存在下
一个
更大的
排列
,则将
数字
重新
排列
成最小的
排列
(即升序
排列
)。 必须 原地 修改,只允许使用额外常数空间。 来自力扣31。 答案2022-01-07: 从右往左遍历,遇到降序停止。交换,反序。 时间复杂度:O(N)。 空间复杂度:O(1)。 代码用golang编写。代码如下: package main import ( "fmt" )
python
数字
排列
组合去重_python解决
排列
组合
问题
的4种方式
前言
排列
组合
问题
在是算法中很基础的
一个
问题
,它们的区别就是,
排列
要考虑顺序,组合不考虑顺序。在面试的过程中可能会考到,在现实生活中也是经常可以遇到的,比如说
一个
3位
数字
的密码锁,要尝试多少次才能解开?那么用python有哪些方法可以解决此类
问题
呢?
问题
以
一个
具体的例子来说明在python中此类
问题
的可能解决方法,要求给定
一个
没有重复
数字
的序列,返回其所有可能的全
排列
。示例:输入: [1,2,3]输...
排列
组合的写法_
数字
排列
组合公式写法介绍
内容提要:文章通过
一个
实例来介绍
数字
排列
组合公式的写法,感兴趣的朋友对
排列
组合公式稍微变通实现类似的需求。需要
排列
组合公式的,多是对
数字
感兴趣的朋友,喜欢对
数字
排列
组合。本文介绍通过excel中编写VBA代码,掌握一些规律和算法来写
排列
组合公式。
数字
排列
组合公式的思路,可以这样理解:从n个不同元素中,任取m(m≤n)个元素按照一定的顺序排成一列。下面通过
一个
实例来讲解如何通过
排列
组合公式完成
数字
排...
MS-SQL Server
34,587
社区成员
254,588
社区内容
发帖
与我相关
我的任务
MS-SQL Server
MS-SQL Server相关内容讨论专区
复制链接
扫一扫
分享
社区描述
MS-SQL Server相关内容讨论专区
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章