关于IEEEAccess中伪代码的格式小结
Posted lisamon
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了关于IEEEAccess中伪代码的格式小结相关的知识,希望对你有一定的参考价值。
目前遇到的伪代码主要用了三种: algorithmic, algorithmicx, algorithm2e
大致的格式如下
\\beginalgorithm \\captionAlgorithm caption \\labelalg:algorithm-label \\beginalgorithmic ... Your pseudocode ... \\endalgorithmic \\endalgorithm
大部分的样式都是包含在algorithm中的,其中algorithmicx
搭配algpseudocode(伪代码的格式)的样式可以满足大部分的需求,algorithm2e类型较前两种语法上复杂一点
下面给出这三种的几个例子
Algorithmic
代码:
\\beginalgorithm[h]
\\captionAn example for format For \\& While Loop in Algorithm
\\beginalgorithmic[1]
\\Foreach $i\\in [1,9]$
\\State initialize a tree $T_i$ with only a leaf (the root);
\\State $T=T\\cup T_i;$
\\EndFor
\\ForAll $c$ such that $c\\in RecentMBatch(E_n-1)$
\\labelcode:TrainBase:getc
\\State $T=T\\cup PosSample(c)$;
\\labelcode:TrainBase:pos
\\EndFor;
\\For$i=1$; $i<n$; $i++$
\\State $//$ Your source here;
\\EndFor
\\For$i=1$ to $n$
\\State $//$ Your source here;
\\EndFor
\\State $//$ Reusing recent base classifiers.
\\labelcode:recentStart
\\While $(|E_n| \\leq L_1 )and( D \\neq \\phi)$
\\State Selecting the most recent classifier $c_i$ from $D$;
\\State $D=D-c_i$;
\\State $E_n=E_n+c_i$;
\\EndWhile
\\labelcode:recentEnd
\\endalgorithmic
\\endalgorithm
Algorithmicx
前期准备:
\\usepackage[top=2cm, bottom=2cm, left=2cm, right=2cm]geometry
\\usepackagealgorithm
\\usepackagealgorithmicx
\\usepackagealgpseudocode
\\usepackageamsmath
\\floatnamealgorithm算法
\\renewcommand\\algorithmicrequire\\textbf输入:
\\renewcommand\\algorithmicensure\\textbf输出:
代码:
\\beginalgorithm
\\caption用归并排序求逆序数
\\beginalgorithmic[1] %每行显示行号
\\Require $Array$数组,$n$数组大小
\\Ensure 逆序数
\\Function MergerSort$Array, left, right$
\\State $result \\gets 0$
\\If $left < right$
\\State $middle \\gets (left + right) / 2$
\\State $result \\gets result +$ \\CallMergerSort$Array, left, middle$
\\State $result \\gets result +$ \\CallMergerSort$Array, middle, right$
\\State $result \\gets result +$ \\CallMerger$Array,left,middle,right$
\\EndIf
\\State \\Return$result$
\\EndFunction
\\State
\\FunctionMerger$Array, left, middle, right$
\\State $i\\gets left$
\\State $j\\gets middle$
\\State $k\\gets 0$
\\State $result \\gets 0$
\\While$i<middle$ \\textbfand $j<right$
\\If$Array[i]<Array[j]$
\\State $B[k++]\\gets Array[i++]$
\\Else
\\State $B[k++] \\gets Array[j++]$
\\State $result \\gets result + (middle - i)$
\\EndIf
\\EndWhile
\\While$i<middle$
\\State $B[k++] \\gets Array[i++]$
\\EndWhile
\\While$j<right$
\\State $B[k++] \\gets Array[j++]$
\\EndWhile
\\For$i = 0 \\to k-1$
\\State $Array[left + i] \\gets B[i]$
\\EndFor
\\State \\Return$result$
\\EndFunction
\\endalgorithmic
\\endalgorithm
流程图:
Algorithm2e
准备工作:
%% 防止冲突所加
\\makeatletter
\\newif\\[email protected]
\\makeatother
\\let\\algorithm\\relax
\\let\\endalgorithm\\relax
\\usepackage[linesnumbered,ruled,vlined]algorithm2e%[ruled,vlined]
\\usepackagealgpseudocode
\\usepackageamsmath
\\renewcommand\\algorithmicrequire\\textbfInput: % Use Input in the format of Algorithm
\\renewcommand\\algorithmicensure\\textbfOutput: % Use Output in the format of Algorithm
代码:
\\beginalgorithm
\\captionidentify Row Context
\\KwIn$r_i$, $Backgrd(T_i)$=$T_1,T_2,\\ldots ,T_n$ and similarity threshold $\\theta_r$
\\KwOut$con(r_i)$
$con(r_i)= \\Phi$\\;
\\For$j=1;j \\le n;j \\ne i$
float $maxSim=0$\\;
$r^maxSim=null$\\;
\\Whilenot end of $T_j$
compute Jaro($r_i,r_m$)($r_m\\in T_j$)\\;
\\If$(Jaro(r_i,r_m) \\ge \\theta_r)\\wedge (Jaro(r_i,r_m)\\ge r^maxSim)$
replace $r^maxSim$ with $r_m$\\;
$con(r_i)=con(r_i)\\cup r^maxSim$\\;
return $con(r_i)$\\;
\\endalgorithm
流程图:
以上是关于关于IEEEAccess中伪代码的格式小结的主要内容,如果未能解决你的问题,请参考以下文章