精確值 VS 全文

2021-08-15 17:50:10 字數 741 閱讀 1924

精確值 如它們聽起來那樣精確。例如日期或者使用者 id,但字串也可以表示精確值,例如使用者名稱或郵箱位址。對於精確值來講,foofoo是不同的,20142014-09-15也是不同的。

另一方面,全文

是指文字資料(通常以人類容易識別的語言書寫),例如乙個推文的內容或一封郵件的內容。

全文通常是指非結構化的資料,但這裡有乙個誤解:自然語言是高度結構化的。問題在於自然語言的規則是複雜的,導致計算機難以正確解析。例如,考慮這條語句:

may is fun but june bores me.
它指的是月份還是人?

精確值很容易查詢。結果是二進位制的:要麼匹配查詢,要麼不匹配。這種查詢很容易用 sql 表示:

="john smith"

and user_id =2

and date

>

"2014-09-15"

查詢全文資料要微妙的多。我們問的不只是「這個文件匹配查詢嗎」,而是「該文件匹配查詢的程度有多大?」換句話說,該文件與給定查詢的相關性如何?

我們很少對全文型別的域做精確匹配。相反,我們希望在文字型別的域中搜尋。不僅如此,我們還希望搜尋能夠理解我們的 意圖

:為了促進這類在全文域中的查詢,elasticsearch 首先 分析

文件,之後根據結果建立 倒排索引

。在接下來的兩節,我們會討論倒排索引和分析過程。

計算分數精確值

第一周程式設計作業 題目內容 由於計算機內部表達方式的限制,浮點運算都有精度問題,為了得到高精度的計算結果,就需要自己設計實現方法。0,1 之間的任何浮點數都可以表達為兩個正整數的商,為了表達這樣兩個數的商,可以將相除的結果存放在一維陣列中,陣列的每個元素存放一位十進位制數字。即商的第一位存放在第乙...

階乘的精確值

例如輸入不超過1000的正整數n,輸出n 1x2x3.xn的精確結果。例如輸入30輸出 265252859812191058636308480000000 當輸入1000時1000的階乘約4 10 2567 大概3000位數字,如果採用普通的階乘演算法很明顯溢位 int fun int n 求n的階...

階乘的精確值

輸入乙個不超過1000的正整數n,輸出n 簡單輸入 30簡單輸出 265252859812191058636308480000000 include include define maxn 3000 int f maxn 演算法分析 由於資料不超過1000,則最大為1000,而1000的階乘那是很大...