回覆列表
  • 1 # 魏智勇

    在當前環境下這個操作不推薦,並不是說C語言無法寫搜尋引擎,而是C語言的優勢不在這裡。作為大多數流行的現代語言鼻祖xC語言在執行效率方面的確具有較大優勢,但是,其標準庫支援的功能主要在一些基礎的功能實現上。相比之下,python、java這些現代語言則擁有大量豐富的第三方庫,在程式設計中有一條箴言叫做不要重複造輪子,既然已經有前人提供的庫(也就是輪子),自己再從頭再來的話效率與可靠性方面都會下降。因此,從效率角度來講,採用python等語言設計搜尋引擎可能更快更容易實現。

    回到問題上,有一個(應該是)日本作者寫的《自制搜尋引擎》,可以解決製作搜尋引擎技術線路的問題

  • 2 # Killer666

    如果說做一個完整的搜尋引擎的話那麼需要幾種語言的結合,比如說前端的互動 後端的資料處理和爬蟲,只用C的話很難實現,做後臺資料處理比較合適,如果說怎麼做的話不太好說,涉及到的東西比較多,比如說第一步爬資料 然後儲存 處理(分類 提取關鍵字)等等,步驟很多的。

  • 3 # 薛定諤的小貓貓

    個人覺得完全用C語言去做一個搜尋引擎,是能辦到,但是成本會很高。首先我們來看一個通用的搜尋引擎需要哪些模組。

    一. 網路爬蟲

    要用C語言去做一個爬蟲系統,成本會非常高,很多東西都需要自己實現。而爬蟲系統,個人覺得Python的Scrapy框架是一個很好的選擇,從網頁爬取到資料存入資料庫有一條完整的鏈路。爬蟲系統對效能的要求不高,Python完全可以勝任。

    二. 倒排索引

    倒排索引主要包括索引建立和索引更新。索引的資料結構以及一些演算法,用C語言完全可以的,線上索引實時更新透過C語言實現效率也能高一些。

    三. 檢索模型

    如果只需要做一個簡單的檢索系統,直接BM25演算法就可以了。如果系統比較複雜,考慮到線上效果,那麼需要結合機器學習模型或深度學習模型,考慮到檢索相關性,有很多複雜的設計。不過線上部分完全可以透過C語言實現。

    一般來說,做一個搜尋引擎需要根據不同的模組情況而選擇不同的語言實現,充分發揮各種語言的優勢即可。

  • 中秋節和大豐收的關聯?
  • 越來越多的淘寶和天貓店鋪不提供免費的運費險了,為什麼?