美文网首页
数据结构 第四章 串数组广义表

数据结构 第四章 串数组广义表

作者: 小明同学机器人 | 来源:发表于2020-05-22 18:13 被阅读0次

第四章串数组广义表

基本概念

串(string) -字符串

串是由零个或多个字符组成的有限序列。

序列

S="abcdef"; S>> 串名 abc... 字符 字母数字其他。

空串:由零个字符组成的串,长度为0。

空格串:由一个或者多个空格字符组成的串,称为空格串,长度大于0.

子串:串中任意连续字符组成的序列,称为该串的子串。

主串:包含子串的串

串长度相等条件

  1. 两个串的长度相等
  2. 各个对应位置的字符也相等

对称矩阵

关系 (记住)

i(i-1)/2 +j-1 *********(i>=j)

j(j-1)/2+i-1********* (i<j)

上三角公式
(i-1)(2n-i+2)/2 +(j-i) ************* i>=j

n(n+1)/2 ***************** i<j

广义表

广义表中每个元素可以是单个元素,也可以是一个广义表

n 表示广义表长度

  1. A=() 空表 n=0
  2. B=(e) n=1 一个元素
  3. C=(a,(a,c,d,ef)); n=2 一个元素,一个广义表
  4. D=(A,B,C); n=3 三个广义表
  5. E=(a,E);n=2 E=(a,(a,E)) E=(a,(a,(a,(a,E))))

广义表操作

取表头:GetHead(Ls),Head(Ls) H(Ls) 取第一个元素 或者广义表 A=(a,b,c) H(A)=a

C=((a,c,v),c,e) H(C)=(a,c,v)

取表尾部:GetTail(LS) Tail(LS) T(LS) 除去表头之外构成广义表 B=(a,c,(q,e,r)); T(B)=(c,(q,e,r));

广义表深度 A=(a,(b,e,(e))); h=3;

相关文章

  • 数据结构 串 数组 广义表

    概述 串:字符串的简称,串是一种特殊的线性表,特殊在其数据元素都是一个字符。 数组和广义表可以看做是线性表的扩充,...

  • 数据结构 第四章 串数组广义表

    [TOC] 第四章串数组广义表 基本概念 串(string) -字符串 串是由零个或多个字符组成的有限序列。 序列...

  • 数据结构820知识点总结

    第一章:绪论 数据结构包含:逻辑结构,存储结构,对数据的运算逻辑结构:线性结构(线性表,栈,队列,串,数组,广义表...

  • 学习目录

    第一章 算法 时间复杂度空间复杂度 第二章 线性表 第三章 栈 和 队列 第四章 串KMP 第五章 数组 广义表 ...

  • 广义表

    广义表的定义 广义表是线性表的推广,是一种非线性的数据结构,也有人称其为列表。广义表的实现主要应用递归,通过广义表...

  • #数据结构#—广义表

    广义表 广义表,又称列表,也是一种线性存储结构。同数组类似,广义表中既可以存储不可再分的元素,也可以存储广义表,记...

  • 数据结构(七)数组和广义表

    数组 从本质上讲,数组与顺序表、链表、栈和队列一样,都用来存储具有 "一对一" 逻辑关系数据的线性存储结构。只因各...

  • C#之数据结构(上)

    数据结构 一般将数据结构分为两大类: 线性数据结构和非线性数据结构。 线性数据结构有: 线性表、栈、队列、串、数组...

  • Java数据结构和算法概览

    Java数据结构和算法概览 数据结构 线性数据结构:常见的有一维数组,线性表,栈,队列,双队列,串。 非线性数据结...

  • 数组和广义表

    数组,所有的程序设计语言学习之初都有它的身影。根据数组中存储的数据元素之间的逻辑关系,可以将数组分为 : 一维数组...

网友评论

      本文标题:数据结构 第四章 串数组广义表

      本文链接:https://www.haomeiwen.com/subject/jorcahtx.html