算法篇(持续更新ing)

算法1:(用比较计数对数组进行排序)

ComparisonCoutingSort(A[0....n-1])

//用比较计数对数组进行排序

//输入:可排序数组A[0...n-1]

//输出:数组S[0...n-1],A的元素在其中按照非降序排序

伪代码:

for i←0 to n-1 do
    Count[i]←0
for i←0 to n-2 do
    for j←i+1 to n-1 do
        if A[i]<A[j]
            Count[j]←Count[j]+1
        else  
            Count[i]←Count[i]+1
    for i←0 to n-1 do
        S[Count[i]]←A[i]
    return S

------------------------------------------------------------------------可爱的分界线-------------------------------------------------------------------------------

算法2:(矩阵和)

MatrixMultiplication(A[0...n-1,0...n-1],B[0...n-1,0...n-1])

//用基于定义的算法计算两个n阶矩阵的乘积

//输入:两个矩阵A和B

//输出:矩阵C=A*B

伪代码:

for i←0 to n-1 do
    for j←0 to n-1 do
        C[i,j]←0.0
            for k←0 to n-1 do
        C[i,j]←C[i,j]+A[i,k]*B[k,j]
return C

------------------------------------------------------------------------可爱的分界线-------------------------------------------------------------------------------

算法3:(二进制)

Binary(n)

//输入:十进制正整数n

//输出:n在二进制表示中的二进制数字个数

伪代码:

Count←1
while n>1 do
    Count←Count+1
    n←[n/2]
return  Count

------------------------------------------------------------------------可爱的分界线-------------------------------------------------------------------------------

算法4:(二进制)

BinRec(n)

//输入:一个正的十进制整数n

//输出:n的二进制表示位数

伪代码:

if n=1 return 1
else return BinRec([n/2])+1

------------------------------------------------------------------------可爱的分界线-------------------------------------------------------------------------------

算法5:(斐波那契数列)

F(n)

//根据定义:递归计算第几个斐波那契

//输入:一个非负整数n

//输出:第n个斐波那契数

伪代码:

if n<=1 return n
else return F(n-1)+F(n-2)

------------------------------------------------------------------------可爱的分界线-------------------------------------------------------------------------------

算法6:(斐波那契数列)

Fib(n)

//根据定义:迭代计算第n个斐波那契数

//输入:一个非负整数n

//输出:第n个斐波那契数

伪代码:

F[0]←0;  F[1]←1
for i←2 to n do
    F[i]←F[i-1]+F[i-2]
return F[n]

------------------------------------------------------------------------可爱的分界线-------------------------------------------------------------------------------

算法7:(线性同余法)

Random(n,m,seed,a,b)

//根据线性同余法生产n个伪随机数的一个序列

//输入:一个正整数n和正整数参数m,seed,a,b

//输出:n个伪随机数的一个序列 r1,...r n,是均匀分布在0和m-1区间内的整数值

注意:我们可以把生成的整数作为小数点后面的数字,来获得0和区间的伪随机数

伪代码:

r←seed
for i←1 to n do
ri←(a*ri+b)mod m

------------------------------------------------------------------------可爱的分界线-------------------------------------------------------------------------------

算法8:(选择排序)

SelectionSort(A[0...n-1])选择排序

//用于对给定的数组排序

//输入:一个可排序数组A[0...n-1]

//输出:升序排列的数组A[0...n-1]

伪代码:

for i←0 to n-2 do
    min←i
    for j←i+1 to n-1 do
        if A[j]<A[min]
        min←j
    swap A[i] and A[min]
//找出最小元素扫描交换并放在相应的位置上,直到找到第n-1个最小元素 

------------------------------------------------------------------------可爱的分界线-------------------------------------------------------------------------------

算法9:(

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值