首页 > 其他 > 详细

leetcode Word Frequency

时间:2015-03-24 12:41:46      阅读:238      评论:0      收藏:0      [点我收藏+]

题目连接地址:https://leetcode.com/problems/word-frequency/

Write a bash script to calculate the frequency of each word in a text file words.txt.

For simplicity sake, you may assume:

  • words.txt contains only lowercase characters and space ‘ ‘ characters.
  • Each word must consist of lowercase characters only.
  • Words are separated by one or more whitespace characters.

 

For example, assume that words.txt has the following content:

the day is sunny the the
the sunny is is

Your script should output the following, sorted by descending frequency:

the 4
is 3
sunny 2
day 1

Note:
Don‘t worry about handling ties, it is guaranteed that each word‘s frequency count is unique.

 

 

 代码:

# Read from the file words.txt and output the word frequency list to stdout.
tr -s "\t| " "\n" <words.txt|sort |uniq -c | sort -k1 -r|awk {print $2,$1}

 

解释:

tr -s "\t| " "\n" <words.txt
|sort    
|uniq -c
| sort -k1 -r
 |awk ‘{print $2,$1}‘
 
将文件里面的tab或者空格统一替换成换行
 
排序
 
去重,并且显示
每个单词出现的数量
 
按照单词出现的数量
进行逆序排序
 
交换第一列和第二列的位置
(因为uniq出来的结果数量是在前面的)

 

leetcode Word Frequency

原文:http://www.cnblogs.com/asif/p/4362091.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!