1)串的顺序存储结构
有些计算机采用的字编址方式,即数组元素的分量占4个字节。由此产生紧缩和非紧缩存储区别。
紧缩存储: 一个字的存储单元中存放4个字符;
特点: 节省空间,需要二次寻址,牺牲了CPU时间。
非紧缩存储: 一个字的存储单元中只存放1个字符。
特点: 寻址快,浪费空间,存储密度低。
2)串的链表存储结构
与顺序存储结构类似也有紧缩和非紧缩存储结构的区别。插入、删除操作效率高;存储空间的利用率低;
对于紧缩存储 存储利用率是 50% (data 域4个字节,指针域也4个字节);
对于非紧缩存储 存储利用率是20% (8个字节只存放一个字符)。
3)堆存储结构
串的顺序存储和链表存储各有利弊,在实际应用中常采用一种动态存储结构,称其为堆结构。定义一个很大的连续空间和相应的指针结构。指针用来指示串在堆中的位置;
例如,设有 a=‘BEI’,b=‘ JING’,c=‘’,d=‘SHANGHAI’;