关于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中伪代码的格式小结的主要内容,如果未能解决你的问题,请参考以下文章

关于js中伪数组

JavaScriptjavascript中伪协议(javascript:)使用探讨

CSS中伪元素after的作用

演示-JQuery中伪元素和伪类选择器

CSS中伪元素前的“&”是啥意思?

更改angular2中伪元素的样式