数学结构与算法

Posted weixin_44543308

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了数学结构与算法相关的知识,希望对你有一定的参考价值。

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

开发工具与关键技术:字符串与数组

撰写日期:2020年04月26日

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

一、首先来看字符串:串是字符串的简称,在数据结构中,串是一种在数据元素的组成上具有一定约束条件的线性表,即要求组成线性表的所有数据元素都是字符,所以说串是一个有穷的字符序列,串是由零个或者多个字符组成的有限序列,即作s=”s0s1…sn-1” (n≥0),其中s是串名,字符个数n称作串的长度,双撇号括起来的字符序列”s0s1…sn-1”是串的值。每个字符可以是字母、数字或任何其它的符号。零个字符的串(即:””)称为空串,空串不包含任何字符。值得注意的是:(1)、长度为1的空格串“”不等同于空串“” ,(2)值为单个字符的字符串不等同于单个字符,如"a"与′a′。(3)串值不包含双撇号,双撇号是串的定界符

字符串的数据集合:串的数据集合可以表示为字符序列s0,s1,……,sn-1,每个数据元素的数据类型为字符类型,操作集合:

  1. 初始化(串是在程序中比较常见的线性存储结构,也就是用一个连续的存储空间把串的每一个字符按照一定顺序存储起来。所以,在定义一个串之前,我们得先申请一个足够可以容纳字符串的空间。)(代码借鉴老师的)

  1. 赋值(为我们空间里面每一个赋上一个初始值)(代码借鉴老师的)

  1. 求串长度(是比如一个字符串是有多少个字符组成的)(代码借鉴老师的)

  1. 比较:有相等和不相等两种比较结果,还有大于、等于和小于三种比较结果(大家有注意下它不是比较字符串的地址是不是相等,它是比较两个字符串的内容是否相同,还有在字典里面排在前面的就不比较小,排在后边就是大)(代码借鉴老师的)

  1. 插入(插入操作可以把一些字符或者是一些简单字符串插入另外一个字符串当中)(代码借鉴老师的)

  1. 删除(删除就是把我们整个字符串删除掉)(代码借鉴老师的)

二、下面来认识下数组,数组的定义:是一个有序的元素序列,那么这个定义当中有三个词是重点分别是:有序(代表一种存储的方式)、元素(代表我们存在数组当中的内容或者值)、序列(数组有多个值),我们在计算机当中对于数组的操作一般都是要有名字去代表、第二我们要解决的是数组当中的每个元素或者是每个格我们怎样去操作,所以会涉及到索引和下标,那么如何理解元素呢?简单来说就是存放在每个格中的内容(值)。

一维数组(相当于Excel 表格中的一行当中包括行中的若干个格,对于一维数组来说比较简单(从0一直延续到n(n代表数组的长度)))(图片出自老师)

  二维数组(二维数组是一维数组当中的每个元素都是一维数组):简单的来说所谓的二维数组就是我们常说的行列表,那么这时候套用一维数组的思考方式 一样的要考虑每个格的获取也要涉及到索引和下标问题,因为涉及到行与列,所以它的下标就不在是单独的一个值了,它需要有行的值、有列的值。(图片出自老师)

比如我们访问第一行,套用数组的名字以及它的下标(0,0是表示第0行第0列、第0行第1列一直到……第0行第n列)。

数组除了一二维数组之外还有三维数组、四维数组等等。

以上是关于数学结构与算法的主要内容,如果未能解决你的问题,请参考以下文章

数学建模学习笔记集训十天之第一天

408数据结构与算法—单链表的基本操作

数据结构都有哪些基本算法

数学结构与算法

c语言进阶10-算法

数据结构与算法笔记基本概念