首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 软件管理 > 软件架构设计 >

后缀数组在无指针的编程语言中的实现解决思路

2012-02-11 
后缀数组在无指针的编程语言中的实现在C语言中,比如定义一个字串chars[6],*a[6]如果我们赋值s banana

后缀数组在无指针的编程语言中的实现
在C语言中,比如定义一个字串char   s[6],*a[6];如果我们赋值s= "banana ",则循环设置a[i]=&s[i]     (0 <=i <6)则可以得到s的后缀数组为:

a[0]= "banana ";
a[1]= "anana ";
a[2]= "nana ";
a[3]= "ana ";
a[4]= "na ";
a[5]= "a ";

注意到这里a只是一个指针数组,也就是尽管a[0]到a[5]依次展示了s中的6个后缀串,但a[0]中的 "banana "、a[1]中的 "anana "等等与s的 "banana "其实是使用的同一块内存-------我想知道:在没有指针的编程语言里,比如python、java,有没有好的办法实现后缀数组a并且仍能与s共享原来字串的内存呢?

[解决办法]
没有指针的编程语言里面,你最好不要去想内存的问题。
[解决办法]
如果语言没有提供相应的库来实现想要的功能,又没有指针等操作内存的手段,那么就说明该语言不适合做这种工作,换呗。

热点排行