作者garywine1201 (那是啥)
看板java
标题Re: [问题] 删除文字档内重覆的字东西
时间Thu Jan 22 08:55:09 2009
※ 引述《divaka (希望每个人都活的自在)》之铭言:
: 各位好 !
: 因为我不知道这个问题该用什麽关键字爬文找答案,所以跑来这发问了
: 希望没有违反到版规
: --------------------------------以下是问题---------------------------
: 假设现在我有一个 txt 档,内容如下
: 我,你,他,我,你,他,你,你,你
: 但我并不希望里面有重覆的字出现,所以希望利用程式码改成
: 你,我,他
: 并存成新的 txt 档,请问我该怎麽做比较好呢..?
: 或是怎样的思考方式
: 谢谢!!
split(文字档,",");
linkedlist new;
for(every word){
if(!new.contain(word))
new.add(word)
}
store into new file
我的想法只有这样...
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 218.161.76.3
1F:推 cgkm:即使记忆体不是问题的话 这里用 linked list 实在不妥当 01/22 09:49
2F:推 MonyemLi:以前试过读40M的log分析,用linkedlist 很快就炸了 01/22 12:24
3F:推 qrtt1:为什麽不用 awk, uniq 或直接写 perl 来搞定呢 @@? 01/22 13:05
4F:推 ClareQ:用List作contains搜寻,效率非常糟糕... 01/22 18:20
5F:→ ClareQ:(糟糕是指跟HashSet或TreeSet比较) 01/22 18:22
发问者并没有提到它所要读取程式档案的大小
也许只是一个很小的程式
也许在大档案上效率很恐怖
但在可容许范围内这样做就好了
除非发问者又提出了新的限制与需求
我才会认为应该更进一步的考虑其他作法
否则以快速达成目的 开发可用的程式是第一原则
其次为扩充物件 使其可以更有效率的处理问题
※ 编辑: garywine1201 来自: 61.64.235.79 (01/23 19:01)
6F:→ garywine1201:喔对了 话说awk, perl之类的开发上真的比较快 01/23 19:06
7F:→ garywine1201:在执行效率上 awk这种直译语言说不定还比java快 01/23 19:11