您现在的位置是:首页 >

java实现链表 串的顺序存储

火烧 2021-11-30 18:34:14 1080
串的顺序存储   因为串是特殊的线性表 故其存储结构与线性表的存储结构类似 只不过由于组成串的结点是单个字符 所以存储时有一些特殊的技巧 串的顺序存储顺序串  串的顺序存储结构简称为顺序串   与顺序

串的顺序存储  

  因为串是特殊的线性表 故其存储结构与线性表的存储结构类似 只不过由于组成串的结点是单个字符 所以存储时有一些特殊的技巧

串的顺序存储

顺序串  串的顺序存储结构简称为顺序串   与顺序表类似 顺序串是用一组地址连续的存储单元来存储串中的字符序列 因此可用高级语言的字符数组来实现 按其存储分配的不同可将顺序串分为如下两类   ( )静态存储分配的顺序串  ( )动态存储分配的顺序串

java实现链表 串的顺序存储

静态存储分配的顺序串 ( )直接使用定长的字符数组来定义  该种方法顺序串的具体描述       #define MaxStrSize   //该值依赖于应用 由用户定义      typedef char SeqString[MaxStrSize];  //SeqString是顺序串类型      SeqString S;  //S是一个可容纳 个字符的顺序串 注意   ①串值空间的大小在编译时刻就已确定 是静态的 难以适应插入 链接等操作  ②直接使用定长的字符数组存放串内容外 一般可使用一个不会出现在串中的特殊字符放在串值的末尾来表示串的结束 所以串空间最大值为MaxStrSize时 最多只能放MaxStrSize 个字符   【例】C语言中以字符 表示串值的终结   ( )类似顺序表的定义  直接使用定长的字符数组存放串内容外 可用一个整数来表示串的长度 此时顺序串的类型定义完全和顺序表类似     typedef struct{        char ch[MaxStrSize]; //可容纳 个字符 并依次存储在ch[ n]中        int length;      }SeqString;

 注意   ①串的长度减 的位置就是串值的最后一个字符的位置   ②这种表示的优点是涉及串长的操作速度快

动态存储分配的顺序串  顺序串的字符数组空间可使用C语言的malloc和free等动态存储管理函数 来根据实际需要动态地分配和释放   这样定义的顺序串类型亦有两种形式 ( )较简单的定义     typedef char *string; //C中的串库<string h>相当于使用此类型定义串

lishixinzhi/Article/program/sjjg/201311/22631  
永远跟党走
  • 如果你觉得本站很棒,可以通过扫码支付打赏哦!

    • 微信收款码
    • 支付宝收款码