Latex写算法的伪代码排版

这篇具有很好参考价值的文章主要介绍了Latex写算法的伪代码排版。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

一、algorithmicx例子

代码:

\documentclass[11pt]{ctexart}
\usepackage[top=2cm, bottom=2cm, left=2cm, right=2cm]{geometry}
\usepackage{algorithm}
\usepackage{algorithmicx}
\usepackage{algpseudocode}
\usepackage{amsmath}

\floatname{algorithm}{算法}
\renewcommand{\algorithmicrequire}{\textbf{输入:}}
\renewcommand{\algorithmicensure}{\textbf{输出:}}

\begin{document}
    \begin{algorithm}
        \caption{用归并排序求逆序数}
        \begin{algorithmic}[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 +$ \Call{MergerSort}{$Array, left, middle$}
                    \State $result \gets result +$ \Call{MergerSort}{$Array, middle, right$}
                    \State $result \gets result +$ \Call{Merger}{$Array,left,middle,right$}
                \EndIf
                \State \Return{$result$}
            \EndFunction
            \State
            \Function{Merger}{$Array, left, middle, right$}
                \State $i\gets left$
                \State $j\gets middle$
                \State $k\gets 0$
                \State $result \gets 0$
                \While{$i<middle$ \textbf{and} $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
        \end{algorithmic}
    \end{algorithm}
\end{document}

效果:

算法伪代码模板,Latex,Latex

二、algorithm例子

前期准备:

\usepackage{algorithm}
\usepackage{algpseudocode}
\usepackage{amsmath}
\renewcommand{\algorithmicrequire}{\textbf{Input:}}  % Use Input in the format of Algorithm
\renewcommand{\algorithmicensure}{\textbf{Output:}} % Use Output in the format of Algorithm

代码1:

  \begin{algorithm}[htb]
  \caption{ Framework of ensemble learning for our system.}
  \label{alg:Framwork}
  \begin{algorithmic}[1]
    \Require
      The set of positive samples for current batch, $P_n$;
      The set of unlabelled samples for current batch, $U_n$;
      Ensemble of classifiers on former batches, $E_{n-1}$;
    \Ensure
      Ensemble of classifiers on the current batch, $E_n$;
    \State Extracting the set of reliable negative and/or positive samples $T_n$ from $U_n$ with help of $P_n$;
    \label{code:fram:extract}
    \State Training ensemble of classifiers $E$ on $T_n \cup P_n$, with help of data in former batches;
    \label{code:fram:trainbase}
    \State $E_n=E_{n-1}cup E$;
    \label{code:fram:add}
    \State Classifying samples in $U_n-T_n$ by $E_n$;
    \label{code:fram:classify}
    \State Deleting some weak classifiers in $E_n$ so as to keep the capacity of $E_n$;
    \label{code:fram:select} \\
    \Return $E_n$;
  \end{algorithmic}
\end{algorithm}

效果:

算法伪代码模板,Latex,Latex

代码2:

\begin{algorithm}[h]
  \caption{An example for format For \& While Loop in Algorithm}
  \begin{algorithmic}[1]
    \For{each $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})$}
      \label{code:TrainBase:getc}
      \State $T=T\cup PosSample(c)$;
      \label{code: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.
    \label{code: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
    \label{code:recentEnd}
  \end{algorithmic}
\end{algorithm}

效果:

算法伪代码模板,Latex,Latex

代码3:

\begin{algorithm}[h]
  \caption{Conjugate Gradient Algorithm with Dynamic Step-Size Control}
  \label{alg::conjugateGradient}
  \begin{algorithmic}[1]
    \Require
      $f(x)$: objective funtion;
      $x_0$: initial solution;
      $s$: step size;
    \Ensure
      optimal $x^{*}$
    \State initial $g_0=0$ and $d_0=0$;
    \Repeat
      \State compute gradient directions $g_k=\bigtriangledown f(x_k)$;
      \State compute Polak-Ribiere parameter $\beta_k=\frac{g_k^{T}(g_k-g_{k-1})}{\parallel g_{k-1} \parallel^{2}}$;
      \State compute the conjugate directions $d_k=-g_k+\beta_k d_{k-1}$;
      \State compute the step size $\alpha_k=s/\parallel d_k \parallel_{2}$;
    \Until{($f(x_k)>f(x_{k-1})$)}
  \end{algorithmic}
\end{algorithm}

效果:

算法伪代码模板,Latex,Latex

代码4:

\makeatletter
\def\BState{\State\hskip-\ALG@thistlm}
\makeatother
\begin{algorithm}
\caption{My algorithm}\label{euclid}
\begin{algorithmic}[1]
\Procedure{MyProcedure}{}
\State $\textit{stringlen} \gets \text{length of }\textit{string}$
\State $i \gets \textit{patlen}$
\BState \emph{top}:
\If {$i > \textit{stringlen}$} \Return false
\EndIf
\State $j \gets \textit{patlen}$
\BState \emph{loop}:
\If {$\textit{string}(i) = \textit{path}(j)$}
\State $j \gets j-1$.
\State $i \gets i-1$.
\State \textbf{goto} \emph{loop}.
\State \textbf{close};
\EndIf
\State $i \gets i+\max(\textit{delta}_1(\textit{string}(i)),\textit{delta}_2(j))$.
\State \textbf{goto} \emph{top}.
\EndProcedure
\end{algorithmic}
\end{algorithm}

效果:

算法伪代码模板,Latex,Latex

三、algorithm2e例子

algorithm2e包可能会与其它包产生冲突,一个常见的错误提示是“Too many }'...”。为了解决这个问题,要在引入algorithm2e包之前加入下面的命令:

\makeatletter
\newif\if@restonecol
\makeatother
\let\algorithm\relax
\let\endalgorithm\relax

前期准备:

\makeatletter
\newif\if@restonecol
\makeatother
\let\algorithm\relax
\let\endalgorithm\relax
\usepackage[linesnumbered,ruled,vlined]{algorithm2e}%[ruled,vlined]{
\usepackage{algpseudocode}
\usepackage{amsmath}
\renewcommand{\algorithmicrequire}{\textbf{Input:}}  % Use Input in the format of Algorithm
\renewcommand{\algorithmicensure}{\textbf{Output:}} % Use Output in the format of Algorithm 

代码1:

\begin{algorithm}
  \caption{identify 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$\;
    \While{not 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)$\;
\end{algorithm}

效果:

算法伪代码模板,Latex,Latex

代码2:

\begin{algorithm}
\caption{Service checkpoint image storage node and routing path selection}
\LinesNumbered
\KwIn{host server $PM_s$ that $SerImg_k$ is fetched from, $subnet_s$ that $PM_s$ belongs to, $pod_s$ that $PM_s$ belongs to}
\KwOut{Service image storage server $storageserver$,and the image transfer path $path$}
$storageserver$ = Storage node selection($PM_s$, $SerImg_k$,$subnet_s$,$pod_s$)\;
\If{ $storageserver$ $\neq$ null}
{
     select a path from $storageserver$ to $PM_s$ and assign the path to $path$\;
}

\textbf{final} \;
\textbf{return} $storageserver$ and $path$;
\end{algorithm}

效果:

算法伪代码模板,Latex,Latex

代码3:

\begin{algorithm}
\caption{Storage node selection}
\LinesNumbered
\KwIn{host server $PM_s$ that the checkpoint image $Img$ is fetched from, $subnet_s$ that $PM_s$ belongs to, $pod_s$ that $PM_s$ belongs to}
\KwOut{Image storage server $storageserver$}

\For{ each host server $PM_i$ in the same subnet with $PM_s$ }
{
    \If{ $PM_i$ is not a service providing node or checkpoint image storage node of $S_k$ }
    {
        add $PM_i$ to $candidateList$ \;
    }
}
sort $candidateList$ by reliability desc\;
init $storageserver$ ;
\For{ each $PM_k$ in $candidateList$}
{

            \If{ $SP(PM_k)$ $\geq$ $E(SP)$ of $pod_i$ and $BM_k$ $\le$ size of $Img$ }
             {
                assign $PM_k$ to $storageserver$\;
                goto final\;
             }
}
clear $candidateList$\;
add all other subnets in $pod_s$ to $netList$\;
\For{ each subnet $subnet_j$ in $netList$}
{
        clear $candidateList$\;
        \For {each $PM_i$ in $subnet_j$ }
        {
            \If{ $PM_i$ is not a service providing node or checkpoint image storage node of $S_k$ }
            {
                add $PM_i$ to $candidateList$\;
            }
        }
    sort all host in $candidateList$ by reliability desc\;
    \For{ each $PM_k$ in $candidateList$}
    {

            \If{$SP(PM_k)$ $\geq$ $E(SP)$ of $pod_i$ and $BM_k$ $\le$ size of $Img$}
            {
                assign $PM_k$ to $storageserver$ \;
                goto final\;
            }
    }
}
\textbf{final} \;
\textbf{return} $storageserver$;
\end{algorithm}

效果:

算法伪代码模板,Latex,Latex

代码4:

\begin{algorithm}
\caption{Delta checkpoint image storage node and routing path selection}
\LinesNumbered
\KwIn{host server $PM_s$ that generates the delta checkpoint image $DImg_{kt}$, $subnet_s$ that $PM_s$ belongs to, $pod_s$ that $PM_s$ belongs to}
\KwOut{Delta image storage server $storageserver$,and the image transfer path $Path$}
$storageserver$ = Storage node selection($PM_s$, $DImg_{kt}$,$subnet_s$,$pod_s$)\;
\If{ $storageserver$ $\equiv$ null}
{
     the delta checkpoint image is stored in the central storage server\;
     goto final\;
}
construct weighted topological graph $graph_s$ of $pod_s$\;
calculate the shortest path from $storageserver$ to $PM_s$ in $graph_s$ by using the Dijkstra algorithm\;
\textbf{final} \;
\textbf{return} $storageserver$ and $path$;
\end{algorithm}

效果:

算法伪代码模板,Latex,Latex

代码5:

\documentclass[8pt,twocolumn]{ctexart}
\usepackage{amssymb}
\usepackage{bm}
\usepackage{textcomp} %命令\textacutedbl的包,二阶导符号

% Page length commands go here in the preamble
\setlength{\oddsidemargin}{-0.25in} % Left margin of 1 in + 0 in = 1 in
\setlength{\textwidth}{9in}   % 纸张宽度Right margin of 8.5 in - 1 in - 6.5 in = 1 in
\setlength{\topmargin}{-.75in}  % Top margin of 2 in -0.75 in = 1 in
\setlength{\textheight}{9.2in}  % Lower margin of 11 in - 9 in - 1 in = 1 in
\setlength{\parindent}{0in}


\makeatletter
\newif\if@restonecol
\makeatother
\let\algorithm\relax
\let\endalgorithm\relax
\usepackage[linesnumbered,ruled,vlined]{algorithm2e}%[ruled,vlined]{
\usepackage{algpseudocode}
\renewcommand{\algorithmicrequire}{\textbf{Input:}} 
\renewcommand{\algorithmicensure}{\textbf{Output:}} 

\begin{document}

\begin{algorithm}
\caption{component matrices computing}
\LinesNumbered
\KwIn{$\mathcal{X}\in\mathbb{R}^{l_1\times l_2\times\cdots\times l_N},\varepsilon,\lambda,\delta,R$}
\KwOut{$A^{(j)}s$ for $j=1$ to $N$}
\textbf{Initialize} all $A^{(j)}s$ //which can be seen as the $0^{th}$ round iterations\;

{$l$\hspace*{-1pt}\textacutedbl}$=L$ //if we need to judge whether $(11)$ is true then {$l$\hspace*{-1pt}\textacutedbl} denotes $L|_{t-1}$\;

\For{ each $A_{i_jr}^{<!-- -->{j}}(1\le j\le N,1\le i_j\le I_j,1\le r\le R)$ }
{//$1^{st}$ round iterations\;
    $g_{i_jr}^{(j)'}=g_{i_jr}^{(j)}$\;
    $A_{i_jr}^{(j)'}=A_{i_jr}^{(j)}$//if the rollback shown as $(12)$ is needed,$A_{i_jr}^{(j)'}$ denotes $A_{i_jr}^{(j)}|_{t-1}$\;
    $A_{i_jr}^{(j)}=A_{i_jr}^{(j)}-\mathrm{<!-- -->{\bf sign}}\left(g_{i_jr}^{(j)}\right)\cdot\delta_{i_jr}^{(j)}$\;
}

\Repeat(//other rounds of iterations for computing component matrices){$\bm{L\le \varepsilon}$ or maximum iterations exhausted}
{
    $l'=L$ //if we need to judge whether $(11)$ is true then $l'$ denotes $L|_t$\;
    \For{ each $A_{i_jr}^{<!-- -->{j}}(1\le j\le N,1\le i_j\le I_j,1\le r\le R)$}
    {
        \If{$g_{i_jr}^{(j)}\cdot g_{i_jr}^{(j)'}>0$}
        {
                $A_{i_jr}^{(j)'}=A_{i_jr}^{(j)} $\;
                $g_{i_jr}^{(j)'}=g_{i_jr}^{(j)} $\;
                $\delta_{i_jr}^{(j)}=\bm{\min}\left(\delta_{i_jr}^{(j)}\cdot\eta^{+},Max\_Step\_Size\right)$\;
                $A_{i_jr}^{(j)}=A_{i_jr}^{(j)}-\mathrm{<!-- -->{\bf sign}}\left(g_{i_jr}^{(j)}\right)\cdot\delta_{i_jr}^{(j)}$\;
        }
        \ElseIf{$g_{i_jr}^{(j)}\cdot g_{i_jr}^{(j)'}<0$}
        {
            \If{$l'>l$\hspace*{-1pt}\textacutedbl}
            {
                $g_{i_jr}^{(j)'}=g_{i_jr}^{(j)}$\;
                $A_{i_jr}^{(j)}=A_{i_jr}^{(j)'}$// if $(11)$ is true then rollback as $(12)$\;
                $\delta_{i_jr}^{(j)}=\bm{\max}\left(\delta_{i_jr}^{(j)}\times\eta^{-},Min\_Step\_Size\right)$\;
            }
            \Else
            {
                $A_{i_jr}^{(j)'}=A_{i_jr}^{(j)} $\;
                $g_{i_jr}^{(j)'}=g_{i_jr}^{(j)} $\;
                $\delta_{i_jr}^{(j)}=\bm{\max}\left(\delta_{i_jr}^{(j)}\cdot\eta^{-},Min\_Step\_Size\right)$\;
                $A_{i_jr}^{(j)}=A_{i_jr}^{(j)}-\mathrm{<!-- -->{\bf sign}}\left(g_{i_jr}^{(j)}\right)\cdot\delta_{i_jr}^{(j)}$\;
            }
        }
        \Else
        {
                $A_{i_jr}^{(j)'}=A_{i_jr}^{(j)} $\;
                $g_{i_jr}^{(j)'}=g_{i_jr}^{(j)} $\;
                $A_{i_jr}^{(j)}=A_{i_jr}^{(j)}-\mathrm{<!-- -->{\bf sign}}\left(g_{i_jr}^{(j)}\right)\cdot\delta_{i_jr}^{(j)}$\;
        }
    }
    $l$\hspace*{-1pt}\textacutedbl$=l'$\;
}
\end{algorithm}
\end{document}

效果:

算法伪代码模板,Latex,Latex

代码6:

\usepackage[ruled,linesnumbered]{algorithm2e}
\usepackage{amsmath}

\begin{algorithm}
    \caption{Learning algorithm of R2P}
    \label{alg:r2p}
    \KwIn{ratings $R$, joint demographic representations $Y$,learning rate $\eta$,maximum iterative number $maxIter$, negative sampling number $k$\;}
    \KwOut{interaction matrix $\bm{W}$, movie vectors $V$\;}
    Initialize $\bm{W},V$ randomly\;
    $t = 0$\;
    For convenience, define $\vec{\varphi}_n = \sum_{m\in S_n}r_{m,n}\vec{v}_m$\; %\varphi_n\bm{W}\vec{y}_n
    \While{not converged \rm{or} $t>maxIter$}
    {
      t = t+1\;
      \For{$n=1;n \le N;n++$}
      {
        $\bm{W} = \bm{W}+\eta\big(1-\sigma\left(\vec{\varphi}_n^T\bm{W}\vec{y}_n\right)\big)\vec{\varphi}_n\vec{y}_n^T$\;\label{algline:W}
        \For{$m\in S_n$}
        {
            $\vec{v}_m=\vec{v}_m+ \eta\left(1-\sigma\left(\vec{\varphi}_n^T\bm{W}\vec{y}_n\right)\right)r_{m,n}\bm{W}\vec{y}_n$\;\label{algline:V}
        }
        \For{$i=1;i\le k;i++$}
        {
            sample negative sample $\vec{y}_i$ from $P_n$\;
            $\bm{W} = \bm{W}-\eta\big(1-\sigma\left(-\vec{\varphi}_n^T\bm{W}\vec{y}_n\right)\big)\vec{\varphi}_n\vec{y}_i^T$\;
            \For{$m\in S_n$}
            {
                $\vec{v}_m=\vec{v}_m- \eta\left(1-\sigma\left(-\vec{\varphi}_n^T\bm{W}\vec{y}_n\right)\right)r_{m,n}\bm{W}\vec{y}_i$\;
            }
        }
      }
      $\bm{W} = \bm{W}-2\lambda\eta\bm{W}$\;
      $V=V-2\lambda\eta V$
    }
    return $\bm{W},V$\;
    %\end{algorithmic}
\end{algorithm}

效果:

算法伪代码模板,Latex,Latex文章来源地址https://www.toymoban.com/news/detail-791051.html

到了这里,关于Latex写算法的伪代码排版的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 简单高效学习 LaTeX 007 - LaTex Format Control 科学排版之格式控制

    这一集的视频演示了如何在LaTeX中进行排版的格式控制: https://www.douyin.com/user/self?modal_id=7303925716830211379showTab=post

    2024年01月21日
    浏览(35)
  • Latex在同一figure中排版多张图片的方法

    主要使用了 minipage(子图) 语法。 minipage 可以嵌套,子图还可以分解为更多子图,功能很好玩,无聊可以自己试试。下面介绍几种常用效果的实现方法。 上述代码的结果为: 特别需要注意的是,第一个minipage的宽度和第二个minipage的宽度之和不能超过1。如果超过一,则会自

    2024年02月17日
    浏览(43)
  • 论文排版神器VSCode+LaTeX最新保姆级图文配置教程

    LaTeX LaTeX L A T E ​ X 是一种基于ΤΕΧ的排版系统,由美国计算机学家Leslie Lamport开发。 LaTeX LaTeX L A T E ​ X 使用户在没有排版和程序设计的知识也可以在几天、甚至几小时内生成很多具有书籍质量的印刷品。对于生成复杂表格和数学公式,这一点表现得尤为突出。因此它非常

    2024年02月06日
    浏览(53)
  • 数学建模 latex 图片以及表格排版整理(overleaf)

    无论是什么比赛,图片和表格的格式都非常重要,这边的重要不只是指规范性,还有抓住评委眼球的能力。 那么怎样抓住评委的眼球? 最重要的一点就是善用 图片 和 表格 (当然撰写论文最重要的是 逻辑 ,这个是需要长期的阅读和总结训练的,前期甚至还需要大量的背诵

    2023年04月10日
    浏览(45)
  • 【latex】参考文献排版前移,在最前面引用\usepackage{url}

    参考文献从21开始排版前移了 解决方案:在最前面加一行 申申yyds!!最后真是url的问题,学习到了申申解决问题的逻辑,感觉好丝滑 请教了申申,申申说是因为: 分栏和单词压缩到同一行的冲突 为了好看,单词间不换行,并且长字符串尽量保持在同一行,允许适当的溢出

    2024年01月17日
    浏览(50)
  • 利用Overleaf使用Latex插入算法伪代码

    目录 一个简单的例子: 样式一(algorithm2e算法): 样例二(algorithm2e算法):  样式三(algorithm算法):  样式四(algorithm算法): 下面详细讲解algorithm2e算法的使用 1、宏包参数的使用 2、修改Algorithm为中文 3、修改Input、Output为中文 4、自定义算法编号 5、添加算法目录 总

    2024年02月07日
    浏览(45)
  • latex 如何在overleaf中插入算法伪代码

    博主今天在用overleaf写论文,急需插入伪代码,将查阅结果记录在此以便后续参考。 overleaf有专门的说明文档来教大家如何正确插入伪代码: https://www.overleaf.com/learn/latex/Algorithms  列举几种样式与其对应的latex源码。  Latex源码:  Latex源码: Latex源码: 以下两种代码来自:

    2024年02月11日
    浏览(43)
  • 【实用技巧】Latex写算法伪代码(pseudocode)

    本文使用线上Latex编译平台:https://www.overleaf.com 注册登录后即可创建Latex项目 创建新项目,这里命名为pseudocode_demo 在main.tex文件中加入第三方包 如果需要显示中文则另外加 usepackage{CJKutf8} 需要注意的是,overleaf使用的是pdfLaTeX进行编译的,对于中文需要进行额外的适配操作

    2024年02月08日
    浏览(35)
  • 【数学建模】论文模板和latex模板

    https://dxs.moe.gov.cn/zx/a/hd_sxjm_gsyw/210910/1727890.shtml A4,上下左右各留出至少2.5厘米的页边距 纸质论文第一页为承诺书,第二页为编号专用页(这两页单独打印即可,不需要在电子版中写上) 论文第三页为摘要专用页。摘要内容(含标题和,无需翻译成英文)不能超过一页

    2024年02月06日
    浏览(55)
  • Tomcat 的伪代码

    步骤: main()调用start()方法 解析所有被 @WebServlet 注解修饰的类,放到一个数组中 用一个ArrayList存储 Servlet 对象,利用反射机制实例化所有解析出来的类中(数组中)的servlet对象,并保存到ArrayList中 把每个 servlet 对象初始化(调用inti()方法) 启动一个 HTTP 服务器(new Server

    2024年02月11日
    浏览(25)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包