伪代码学习与应用

article/2025/8/28 2:53:39

目录

  • 0. 前言
  • 1. 伪代码的基础语法
  • 2. 在word中插入伪代码
    • 2.1 Aurora和Miktex安装
    • 2.2 插入伪代码
  • 参考链接
  • 伪代码模板
    • 模板一
    • 模板二
    • 模板三
    • 模板四
  • 疑难杂症
    • 1. 显示中文?
    • 2. 特殊字符?
    • 3. 换行?

0. 前言

上一次接触伪代码可能还是在现代数字信号处理的课上,那时候只是学了个皮毛,照猫画虎瞎弄了一通,这次因为实际需要得好好学习一下,主要完成以下两个目标:

  1. 伪代码基础知识和语法;
  2. 在word中插入伪代码。

1. 伪代码的基础语法

教你写一手漂亮的伪代码(详细规则&简单实例)
学会写伪代码

  • 每一条指令占一行,描述不出的指令可以用文字表示,语句后不接任何符号;
  • 分支、循环语句要有严格的缩进(与python一样),并有结束标记;
    for xxx doif xxx then...else if xxx then...else...end if
    end for
    
  • 用“<-”来表示赋值

2. 在word中插入伪代码

流着泪终于把伪代码给加入到word里了。

2.1 Aurora和Miktex安装

Office -Word 公式插件Aurora的使用 ——在 Word 中插入 LaTex 公式 提供了安装包,文件解压后也会有安装步骤,在这里另外说明一下:
(一)安装Micro-Miktex软件。其中“basic-miktex-2.9.7152.exe”文件是2.9版本的,在文件夹"aurora插件安装\Aurora2x\Micro-miktex"是2.5版本的,因此只要选一个下载即可,我选的是2.9版本的,并记一下自己安装的路径(在使用2.5的过程中出现了不能下载一些包的情况,2.9版本在安装过程中有个选项为自动下载必要的包)
(二)安装Aurora。在提示需下载、安装Micro-Miktex时,跳过。
(三)使用keygen进行破解Aurora。(上述安装包有提供keygen文件)

2.2 插入伪代码

  1. 打开Aurora
    打开word(2019版本),点击“插入 - 对象”,出现以下界面,选择Aurora Equation点击确定,将出现以下窗口。
    在这里插入图片描述

    在这里插入图片描述

  2. 输入内容
    以下内容摘自:【Aurora】在word中插入算法伪代码、表格和公式
    开Aurora公式编辑框,在其中写入:

    \renewcommand{\thealgorithm}{1}
    \begin{algorithm}[H] 
    \caption{*******************************************} 
    \label{ABCLFRS}
    \begin{algorithmic}[1] 
    \Require{S,$\lambda$,T,k} 
    \Ensure{$\mathbf{w}_{222}$}\\ 
    \textbf{initialize}: Set $\mathbf{w}_1 = 0$ 
    \For{$t = 1,2,...,T$} 
    \State Choose $A_t \subset[m]$
    \EndFor
    \end{algorithmic} \end{algorithm}
    

    并在编辑框中的Properties菜单中的Packages选项卡中填入所用到的包:
    在这里插入图片描述

    \usepackage{amsmath}
    \usepackage{amssymb}
    % \usepackage{euler}
    \providecommand{\abs}[1]{\left\lvert#1\right\rvert}
    \providecommand{\norm}[1]{\left\lVert#1\right\rVert}
    \usepackage{bbm}
    \usepackage{CJK}
    \usepackage{listings}
    \usepackage{xcolor}
    \usepackage{listings}
    \usepackage{amsmath,bm,graphicx,multirow,bm,bbm,amssymb,psfrag,algorithm,subfigure,color,mdframed,wasysym,subeqnarray,multicol}\usepackage{algorithm}
    \usepackage{algpseudocode}
    \usepackage{amsmath}
    \renewcommand{\algorithmicrequire}{\textbf{Input:}}
    \renewcommand{\algorithmicensure}{\textbf{Output:}}
    

    最后Refresh一下,就可以得到最终的伪代码了,如下图所示:
    在这里插入图片描述

  3. 解决Problems running LaTex问题
    一下内容参考:安装Aurora+miktex踩坑Problems running LaTex
    解决1:在Properties里的Rendering merhod选择vector或第三个vector(render all fonts)。
    在这里插入图片描述
    解决2:Paths环境不对,应该是Miktex执行文件的位置
    在这里插入图片描述
    解决3:添加环境变量
    在这里插入图片描述
    win10系统环境变量怎么设置?

    解决4:将系统时间修改为2015年
    等成功后,再把日期改回来。
    Win10系统如何修改时间

参考链接

【Microsoft Word】Aurora插入公式点击Refresh,提示Problems running LaTex解决方法
office中的Aurora公式插件,超好用(含下载安装包)
Aurora problems running latex 的解决
如何在Word中优雅地插入伪代码
Latex中加入算法伪代码模板

伪代码模板

模板一

在这里插入图片描述

\renewcommand{\thealgorithm}{1}
\begin{algorithm}[H]
\caption{algorithm caption} %算法的名字
\hspace*{0.02in} {\bf Input:} %算法的输入, \hspace*{0.02in}用来控制位置,同时利用 \\ 进行换行
input parameters A, B, C\\
\hspace*{0.02in} {\bf Output:} %算法的结果输出
output result
\begin{algorithmic}[1]
\State some description % \State 后写一般语句
\For{condition} % For 语句,需要和EndFor对应\State ...\If{condition} % If 语句,需要和EndIf对应\State ...\Else\State ...\EndIf
\EndFor
\While{condition} % While语句,需要和EndWhile对应\State ...
\EndWhile
\State \Return result
\end{algorithmic}
\end{algorithm}

模板二

在这里插入图片描述

\begin{algorithm}[H]  \caption{Title}  \label{alg:Framwork}  \begin{algorithmic}  \Require  xxxxxxxx \Ensure  xxxxxxxxx\For{xyz}\If {yyyyyyy}  \State asdfghjkl;\Else\State qwertyuiop;\If{zzzzzzz}\State zxcvbnm;\EndIf\EndIf\EndFor  \For {abc }  \State qazwsxedc; \EndFor\end{algorithmic}  
\end{algorithm}

模板三

在这里插入图片描述

\begin{algorithm}[H] \caption{HHS}\label{hhsa}\begin{algorithmic}[1]  %1表示每隔一行编号	\Require The original signal $x$.\Ensure  The energy-time-frequency distribution of $x$. \Function{EMD}{$x, seg\_len$}\State $ N \gets length(x) / seg\_len$;\For {$i=1 \to i=N$}\State $seg(i) \gets x(1+(i-1)*seg\_len : i*seg\_len)$;\EndFor\EndFunction\end{algorithmic}
\end{algorithm}

模板四

Latex写算法的伪代码排版

疑难杂症

1. 显示中文?

2. 特殊字符?

3. 换行?


http://chatgpt.dhexx.cn/article/4QdMZihP.shtml

相关文章

2D激光slam四种算法建图效果对比

slam算法对照 通过麦克纳姆轮机器人小车构建地图对比Gmapping、Hector、Karto、Cartographer四种算法的优缺点 真实场景图如下图所示&#xff1a; 具体步骤为&#xff1a; 1、打开地图构建命令 roslaunch turn_on_wheeltec_robot mapping.launch2、打开rviz rviz3、打开控制…

SLAM——hector-slam算法原理解析

1、hector-slam代码框架概述 下载源码&#xff1a;git clone https://github.com/tu-darmstadt-ros-pkg/hector_slam.git 原理解读参照&#xff1a;https://blog.csdn.net/weixin_40047925/article/details/80679496 其中包含了许多用于仿真的文件&#xff0c;hector slam算法主…

激光SLAM算法学习(三)——3D激光SLAM

3D激光SLAM 1、3D激光SLAM的介绍 3D激光SLAM的输入: IMU数据 3D激光雷达数据 里程计数据 3D激光SLAM的输出: 3D点云地图 机器人的轨迹 or PoseGraph 2、3D激光SLAM的发展 3D激光SLAM的帧间匹配方法——点云配准算法 Point-to-Plane ICP Feature-based Method 3D激光SLAM的回…

SLAM 算法的一些简单的介绍和理解,有的是从别的地方找到的资料,感觉很有道理。

SLAM&#xff08;Simultaneous localization and mapping&#xff09;,我们要达到的目的就是估计机器人&#xff08;传感器-比如相机&#xff09;的位置轨迹&#xff0c;然后创建地图。locating和map两者互相依赖&#xff0c;密不可分。然而我们 已知的信息一个是 observation&…

2021年开源SLAM算法

1.TANDEM&#xff1a;Tracking and Dense Mapping in Real-time using Deep Multi-view Stereo 慕尼黑工业大学Daniel Cremers团队&#xff0c;实时单目跟踪稠密建图纯视觉SLAM&#xff0c;采用Realsense D455(深度传感器IMU&#xff0c;但只用RGB) 项目地址&#xff1a;https…

激光SLAM技术总结(3)3D激光SLAM算法原理

目录 1. 3D激光SLAM简介 2. 3D激光雷达SLAM 3. 高精度V-LOAM方案 4 发展趋势 1. 3D激光SLAM简介 在 3D 激光 SLAM 领域中&#xff0c; 由 Zhang J 等人提出的LOAM 方案&#xff0c;利用 3D 激光雷达采集数据&#xff0c; 进行基于特征点的扫描匹配&#xff0c; 利用非线性…

实习:slam算法的学习整理

1.odom 2.updata_odom 3.updata_laser updata_landmark 4.resample pf.c 相机的位姿转换是基于世界坐标系的&#xff0c;观察到的路标也会在世界坐标系中不断收敛&#xff0c;若不是计算错误&#xff0c;基本上不会产生漂移。而IMU是自身坐标系标定的&#xff0c;在转换到…

关于slam

什么是SLAM?机器人在未知环境中&#xff0c;要实现智能化需要完成三个任务&#xff0c;第一个是定位(Localization)&#xff0c;第二个是建图(Mapping)&#xff0c;第三个则是随后的路径规划(Navigation)。 之前地平线的高翔博士用这样一句话概括SLAM的释义。不过实际生活中的…

SLAM介绍

https://blog.csdn.net/tiandijun/article/details/55212968 SLAM 1.  前言 读者朋友们大家好&#xff01;&#xff08;很久很久&#xff09;之前&#xff0c;我们为大家介绍了SLAM的基本概念和方法。相信大家对SLAM&#xff0c;应该有了基本的认识。在忙完一堆写论文、博…

【动态SLAM】快速入门(原理介绍及经典算法)

【动态SLAM】快速入门&#xff08;原理介绍及经典算法&#xff09; 0 简介1. 传统视觉SLAM技术的局限2. 常用算法&#xff1a;2.1 基于深度学习的分割方法2.1.1 目标检测&#xff08;Object Detection&#xff09;2.1.2 语义分割&#xff08;INstance Segmentation&#xff09;…

Visual SLAM算法笔记

MulinB按&#xff1a;最近在学习SLAM算法&#xff0c;这里作为阅读笔记记录和总结一下。这里关注的主要是基于视觉的Visual SLAM或Visual Odometry&#xff0c;也包括一部分图像和IMU融合的Visual-Inertial Odometry相关算法。 注&#xff1a;下文中部分链接指向Google Schola…

一起自学SLAM算法:8.2 Cartographer算法

连载文章&#xff0c;长期更新&#xff0c;欢迎关注&#xff1a; 写在前面 第1章-ROS入门必备知识 第2章-C编程范式 第3章-OpenCV图像处理 第4章-机器人传感器 第5章-机器人主机 第6章-机器人底盘 第7章-SLAM中的数学基础 第8章-激光SLAM系统 8.1 Gmapping算法 8.2 Cartographe…

开源3D激光(视觉)SLAM算法汇总(持续更新)

目录 一、Cartographer 二、hdl_graph_slam 三、LOAM 四、LeGO-LOAM 五、LIO-SAM 六、S-LOAM 七、M-LOAM 八、livox-loam 九、Livox-Mapping 十、LIO-Livox 十一、FAST-LIO2 十二、LVI-SAM 十三、FAST-Livo 十四、R3LIVE 十五、ImMesh 十六、Point-LIO 一、Car…

SLAM | 激光SLAM中开源算法对比

点击上方“AI算法修炼营”&#xff0c;选择加星标或“置顶” 标题以下&#xff0c;全是干货 前面的话 好久没有更新SLAM系列的文章了&#xff0c;前面我们讲到了激光SLAM技术。基于激光雷达的同时定位与地图构建技术&#xff08;simultaneous localization and mapping&#xf…

激光SLAM算法学习(一)——激光SLAM简介

激光SLAM算法学习&#xff08;一&#xff09; 激光SLAM简介 1、SLAM是什么 SLAM是同步定位与地图构建(Simultaneous Localization And Mapping)的缩写&#xff0c;最早由Hugh Durrant-Whyte 和 John J.Leonard提出。SLAM主要用于解决移动机器人在未知环境中运行时定位导航与地…

SLAM算法

一、概述 Simultaneous Localization and Mapping (SLAM)原本是Robotics领域用来做机器人定位的&#xff0c;最早的SLAM算法其实是没有用视觉camera的&#xff08;Robotics领域一般用Laser Range Finder来做SLAM&#xff09;。本文主要关注基于camera图像做SLAM的算法&#xf…

SLAM算法(一)即同步定位与地图构建了解

文章目录 一、SLAM 简介二、SLAM 技术简介三、slam算法实现的几个要点有趣的事&#xff0c;Python永远不会缺席培训说明 一、SLAM 简介 SLAM(Simultaneous Localization and Mapping同步定位与地图构建) 是业界公认视觉领域空间定位技术的前沿方向&#xff0c;它主要的作用是让…

盘点机器人常用的几大主流SLAM算法

SLAM可以说是近几年最火的机器人技术之一&#xff0c;也是机器人领域的关键技术。不少同学表示&#xff0c;学了几年还在「爬坑」&#xff0c;甚至感觉「越学越难」。本文通过整理机器人领域常用的SLAM算法架构及特点&#xff0c;希望为大家的方向选择提供一些参考。 01 SLAM是…

一起自学SLAM算法:7.7 典型SLAM算法

连载文章&#xff0c;长期更新&#xff0c;欢迎关注&#xff1a; 写在前面 第1章-ROS入门必备知识 第2章-C编程范式 第3章-OpenCV图像处理 第4章-机器人传感器 第5章-机器人主机 第6章-机器人底盘 第7章-SLAM中的数学基础 7.1 SLAM发展简史 7.2 SLAM中的概率理论 7.3 估计理论 …

slam原理介绍和经典算法

1.传统slam局限性 slam算法假设的环境中的物体都是处于静态或者低运动状态的&#xff0c;然而&#xff0c;现实世界是复杂多变的&#xff0c;因此这种假设对于应用 环境有着严格的限制&#xff0c;同时影响视觉slam系统在实际场景中的应用性。当环境中存在动态物体时&#xff0…