青岛大学_王卓老师【数据结构与算法】Week06_01_串的定义_学习笔记

本文是个人学习笔记,素材来自青岛大学王卓老师的教学视频。

一方面用于学习记录与分享,

另一方面是想让更多的人看到这么好的《数据结构与算法》的学习视频。

如有侵权,请留言作删文处理。

课程视频链接:

数据结构与算法基础–第06周01–第4章串、数组和广义表1-4.1串的定义

【Week06】01_串、数组和广义表

线性结构可表示为

(a_1, a_2, ..., a_n)

栈和队列是操作受限的线性表;

串是内容受限的线性表;

数组和广义表是线性结构的推广。

串的定义

青岛大学_王卓老师【数据结构与算法】Week06_01_串的定义_学习笔记_第1张图片

串(string):零个或多个任意字符组成的有限序列

串的术语

(1) 子串

一个串种任意个连续字符组成的子序列(含空串)称为该串的子串。

例如

"abcde"

的子串有:

""
"a"
"ab"
"abc"
"abcd"
"abcde"

真子串是指不包含自身的所有子串。

(2) 主串

包含子串的串相应地称为主串。

(3) 字符位置

字符在序列中的序号为该字符在串中的位置。

(4) 子串位置

子串第一个字符在主串中的位置。

(5) 空格串

由一个或多个空格组成的串,与空串不同。

例如:字符串

a = "BEI"
b = "JING"
c = "BEIJING"
d = "BEI JING"

它们的长度分别是

3
4
7
8

c 的子串是:字符串 a 和字符串 b

d 的子串是:字符串 a 和字符串 b

字符串 a 在字符串 c 中的位置:1

字符串 a 在字符串 d 中的位置:1

字符串 b 在字符串 c 中的位置:4

字符串 b 在字符串 d 中的位置:5

(6) 串相等

当且仅当两个串的长度相等并且各个对应位置上的字符都相同时,这两个串才是相等的。

例如:

"abcd" ≠ "abc"
"abcd" ≠ "abcde"
(7) 所有空串是相等的

你可能感兴趣的:(【数据结构与算法】王卓老师,学习,笔记,java)