leetcode shell練習之詞頻統計

2021-10-25 12:24:11 字數 1596 閱讀 8009

題目

寫乙個 bash 指令碼以統計乙個文字檔案 words.txt 中每個單詞出現的頻率。

為了簡單起見,你可以假設:

words.txt只包括小寫字母和 』 』 。

每個單詞只由小寫字母組成。

單詞間由乙個或多個空格字元分隔。

示例:假設 words.txt 內容如下:

the day is sunny the the

the sunny is is

你的指令碼應當輸出(以詞頻降序排列):

the 4

is 3

sunny 2

day 1

說明:不要擔心詞頻相同的單詞的排序問題,每個單詞出現的頻率都是唯一的。

你可以使用一行 unix pipes 實現嗎?

答案

# 首先查詢出此文字的內容

# 其次將空格和換行符來進行替換,一行只有乙個詞

# 需要將雜亂無章的資料進行排序

# 將重複的資料進行去重,-c可以查出有多少次重複次數,但是順序是反的

# 上面詞語沒有按照順序進行排序,所以用sort -r 進行倒序排序,從大到小排序

# 用awk 對結果進行左右順序調換

LeetCode shell 三)轉置檔案

檔案 給定乙個檔案 file.txt,轉置它的內容。file.txt name age alice 21 ryan 30 awk end file.txt nf number of fields,也就是當前這一行資料中字段的個數 nf 表示最後一列 nr number of rows rs rows...

SICP練習 1 練習1 1 練習1 5

練習1.1 這道題主要是關於簡單的數字運算,我們看完之後可以在 mit scheme 中進行驗算。如果環境不熟悉,可以參見 scheme 歸納 的第一篇博文。如果發現在 mit scheme 等環境上的運算結果和自己算的不一樣,也應該再仔細看看在書寫 的時候有沒有手誤。練習1.2 這是一道將表示式轉...

練習1 23 練習1 30

1.練習1.23 改後的 如下 define find divisor better n a cond square a n n divides?better n a a else find divisor better n next 2 a define next 2 n if 2 n 1 n 2...