随机序列

摘要:
我在《算法简介》中看到的伪代码已经很久没有编写C代码了。我使用namespacestd编写了C代码#include#include#include;int*随机化;intmain{srand;int*s=随机化;对于{cout˂˂s[i]˂˂“,”;}cout˂˂endl;return0;}无效交换{intt=s[b];s[b]=s[a];s[a]=t;}int*随机化{staticint*s=newint;对于{s[i]=i;cout˂˂s[i]˂˂“,”;}cout˂˂endl;对于{intk=random()%(n-i)+i;//k=[i+1,n-i]cout˂˂“k=”˂˂k˂˂endl;swap;}返回;}

《算法导论》上看到的伪代码

好久没写c代码来,我写的c代码

#include <iostream>
#include <ctime>
#include <cstdlib>
using namespace std;

int* randomize(int n);

int main(int argc, char** argv)
{
    srand((unsigned)time(0));
    int* s = randomize(100);
    for (int i=0; i<100; i++)
    {
        cout << s[i] << ",";
    }
    cout << endl;
    return 0;
}

void swap(int* s, int a, int b)
{
    int t = s[b];
    s[b] = s[a];
    s[a] = t;
}

int* randomize(int n)
{
    static int *s = new int(n);
    for (int i=0; i<n; i++)
    {
        s[i]=i;
        cout << s[i] << ",";
    }
    cout << endl;

    for (int i=0; i<n; i++)
    {
        int k = random()%(n-i) + i; //k=[i+1,n-i]
        cout << "k=" << k << endl;
        swap(s[i],s[k]);
    }
    return s;
}

免责声明:文章转载自《随机序列》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇IE的有条件注释详解(附实例代码)iOS获取手机型号,Swift获取手机型号(类似iphone 7这种,检测机型具体型号)下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

随便看看

Java定时任务

");}}解释:task1是每隔5s执行一次,{秒}{分}{时}{日期}{月}{星期}task2是延迟1s,每隔1S执行一次2、配置文件修改简单版任务池版解释假如只有一个定时任务,可以用简单版;如果有多个定时任务,则要用任务池,不然它会顺序执行。两个任务的时间间隔为:执行时间+设定的定时间隔例子:@Scheduledpublicvoidtask2(){log...

pl/sql中的取模运算

pl/sql语言的取模(即求余)运算不使用大部分语言所支持的a%b而是使用函数mod(a,b)例子如下:写一个匿名块判断某年是否是闰年,能被4但是不能被100整除,或者能被400整除1declare2judgevarchar2(200);3year_inputnumber;4begin5year_input:='&输入年份';6if(mod(year...

git:将两个请求合并为一个请求

Gitrebase ihEAD~2解释:此命令可以以文本形式显示您提交的两次请求。如果数字2被4替换,则您最近四次提交的信息将显示如下:1 pick56a06efchange1:删除一个空白行2 pickedbeab5change2:addlogonMainActivity34#Rebase23198ba..Edbeab5onto23198ba5#6#命令:...

微软新一代输入法框架 TSF

目前,市场上的非微软中文输入法基本上只实现IMM框架。自Windows XP开始以来,Windows提供了一个基于COM的新输入框架TSF。但是,Windows Vista和Windows 7用户也可以使用各种基于IMM的输入方法,因为Windows提供了一个组件来将所有TSF请求转换为IMM API。很可能,因为Win8下的许多Imm函数无法使用。)根据微...

element-ui表格el-table回显时默认全选数据

1、html代码˂el-table-columntype="selection"width="45"...

Linux cat查看文件,查找关键字(grep),统计(wc -l)

######cat搜索关键字的语法:cat file | grep keyword | wc lcat/proc/meminfo | grepSwap | wc-l#######Linux系统中wc命令的功能是统计指定文件中的字节、单词和行数,并显示和输出统计结果。如果没有给出文件名,则从标准输入中读取。wc还提供指定文件的总统计数。此标志不能与-c标志一起...