冒泡排序c++代码_教你写一手漂亮的伪代码

2023-11-06

前言


最近在复盘《算法设计与分析》这门课程的时候,发现老师写得一手漂亮的伪代码,着实羡慕不已,看他写其实已经知道大致写伪代码的规则,但本着严谨的态度,还是系统的学习和整理出来。在学习过程中,我们不可能将每一个算法都完完整整敲一遍,那么伪代码就可以很快捷和清晰的写出对一个算法的解决思路。
我在网上查到的博客中要么写的过于繁琐,要么就是没有实例,这也激起了我想要整理这篇文章的动力,若文章中有错误或者不足,希望大家指出。

伪代码的7个主要部分


1. 算法名称
2. 指令序列
3. 输入/输出
4. 分支选择
5. 赋值
6. 循环
7. 算法结束
文章将从这7个部分依次进行说明

1.算法名称
有两种表示算法的伪代码:过程(Procedure)

函数(Function)
过程和函数的区别是:
过程是执行一系列操作,不需要返回操作的结果,无返回数据。
函数是执行一系列的操作后,要将操作的结果返回,有返回数据。
简单来说二者就是有没有返回数据
算法伪代码的书写规则:

Procedure ([])Function ([])

2.指令序列
指令序列是算法的主体。
指令序列的书写规则:
> 用Begin作为开始,用End作为结束;
> 或者用“{”作为开始&#x

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

冒泡排序c++代码_教你写一手漂亮的伪代码 的相关文章

  • Flask Jinja2 模板中的变量和过滤器

    Flask Jinja2 模板中的变量和过滤器 Flask 可以在视图函数中返回模板文件 模板引擎默认使用的是 Jinja2 通常 返回的 Jinja2 模板文件并不是一个静态的页面 而是同时有静态部分和动态部分 静态部分可以硬编码写死 动
  • 用pe做2012服务器系统教程,微软WDS网络启动PE做系统的服务器配置和PE修改教程...

    本帖最后由 金正电脑 于 2018 10 19 15 45 编辑 继续主楼内容 三 网络PE的修改定制 1 PE的来源 我用的是PE大神hhh333的PE修改的 这个PE自带网卡驱动进入PE自动安装好 不需要手动安装 也有个别网卡驱动不上的
  • 服务器和网站域名,网站服务器和域名的区别

    网站服务器和域名的区别 内容精选 换一换 华为云漏洞扫描服务帮助中心 为用户提供产品简介 用户指南 最佳实践 常见问题 视频帮助等技术文档 帮助您快速上手使用漏洞扫描服务 目前 华为云SSL证书管理服务提供了OV 企业版 OV Pro 企业
  • PyCharm 2023.1.2版本关闭后一直显示正在关闭项目

    最近下载了新的社区版本 出现了关闭程序就一直显示关闭项目的问题 然后各种找方法 试了如下几种 1 调整了一下编码方式 都0变为UTF 8 然后在自然语言添加了中文 也在编辑器那一行里 2 这个问题可能是由于Pycharm在关闭时正在运行一些
  • ubuntu下安装hadoop和eclipse

    hadoop安装方法 https www cnblogs com oskyhg p 9150000 html hadoop 安装教程 本教程由厦门大学数据库实验室 给力星出品 转载请注明 本教程适合于原生 Hadoop 2 包括 Hadoo
  • FloatingActionButton的使用

    FloatingActionButton FAB 是 Android 5 0 新特性 Material Design 中的一个控件 是一种悬浮的按钮 FloatingActionButton 是 ImageView 的子类 因此它具备Ima
  • JAVA代码保护工具DashO Pro v10.0.0 Beta 2重磅上线!更新DashO Gradle插件!

    DashO是一个Java和Android的混用程序 它提供企业级应用的加固和屏蔽 大大降低了知识产权盗窃 数据盗窃 盗版和篡改的风险 分层混淆 加密 水印 自动失效 反调试 反篡改 反仿真器 反挂钩 反根设备解决方案 为世界各地的应用程序提
  • unity Dropdown默认选择不选择任何选项

    当我们使用Dropdown下拉框时 有时不需要有默认选项 把 value设置为 1就可以了 但是用代码设置value 1是没有效果的
  • [Tools: ssh隧道] 跳板机连接内网服务器

    终端连接内网服务器 假设本地是A 内网跳板机是B 内网服务器是C 通常 从A连接C需要两次ssh 但通过以下ssh设置 可以简化连接过程 设置后 在终端键入ssh C 即可登录内网服务器C Host B HostName h User ds
  • C++智能指针实现类多态

    智能指针让我们不再操心内存泄露的问题 类多态是面向对象的一大特性 普通指针可以实现类多态 智能指针同样也能 请看代码 include
  • 70.语义分割和数据集

    在 之前讨论的目标检测问题中 我们一直使用方形边界框来标注和预测图像中的目标 本节将探讨语义分割 semantic segmentation 问题 它重点关注于如何将图像分割成属于不同语义类别的区域 与目标检测不同 语义分割可以识别并理解图
  • 重试C语言之C语言常量

    本章的学习目标如下 1 了解常量定义 2 常量数据类型 3 定义常量的方式 常量定义 常量是固定值 在C语言程序执行过程中不会发生改变 常量数据类型 常量可以使任何基本数据类型 比如 整形常量 浮点型常量 字符串常量 字符常量 也有枚举常量
  • Python删去本地指定类型文件

    Python删去本地指定类型文件 import os def Del File dir ftype files os listdir dir for f in files fl f split if fl 1 ftype os remove
  • 7-52 两个有序链表序列的交集 (20分)Java/C

    先是Java写的 用ArrayList求交集 最后一个测试点内存超限 package exercise import java util public class Main public static Object search Array
  • 面向对象编程的三大特征(封装,继承、多态)以及重写、MRO

    封装 特征一 根据需求将属性和方法封装到一个抽象的类中 在使用的时候 只要按照自己的需求去调用 不必了解实现的细节 封装有两方面的含义 1 将数值 属性 和行为 方法 包装到类对象中 在方法内部对属性进行操作 在类对象的外部调用方法 这样
  • 低通滤波器降噪matlab,基于MATLAB语音信号降噪处理方法研究

    2017 年 04 月下 青春岁月 415 一 语音信号的采集 为了表示取样的语音信号 我们采用的是离散时间模型 建立模型的基本准则是寻求一种可以表达一定物理状态下的数学关系 要使这种关系不仅具有强大的精确度 而且还要最简单 由于语音信号是
  • Java——Scanner的对象next()和nextLine()的区别

    Scanner对象 next 1 一定要读取到有效字符后才可以结束输入 2 对输入有效字符之前遇到的空白 next 方法会自动将其去掉 3 只有输入有效字符后才将其后面输入的空白作为分隔服或者结束符 4 next 不能得到带有空格的字符 p
  • 【光线追踪】 流程分析与实现的路径跟踪渲染器

    前言 搞光追是图形学的浪漫 先放张目前渲染图 分析了部分代码框架 后续补上完整 效果 左边黄色球是Blinn Phong进行着色 右边是Cook Torrance模型着色 BVH 1024x1024 200spp 2x2MSAA VS Om
  • SVR的简单实例应用

    在开始实例应用前先明确一般的操作步骤 导入数据 分割训练集和测试集 数据预处理 建模 模型测试与模型评价 话不多说 我们直接开始吧 导入数据 导入需要的库函数 import pandas as pd import numpy as np f

随机推荐