對於剪枝的一些理解(個人總結)

2021-09-26 11:13:19 字數 530 閱讀 5176

自從死在生日蛋糕這道題的無法理解之後,我就決定要好好開始學習搜尋這一神仙演算法。

下面是我自己對於搜尋中的剪枝的一些理解(可能方法是抄的,但是理解是自己想的,就算不是自己的創新,也是自己理解之後的自己的話!):自己口胡一波,不一定對,但是應該好記。

搜尋還有順序?直接搜不就行了?

no,no,no…

搜尋當然是有順序的,平常來說,若是填一些東西的話,當然是先拿大的填之後再用小的補充(就比如說是stick這道題),這樣的話就會少放些東西(東西乙個乙個計數)從而減少搜尋次數。

所以說,總體而言是,搜尋順序向著搜尋次數減少的方向靠近,從而使得搜尋樹的規模盡量小。

等效冗餘是什麼意思?就是同等效果的多餘的東西。

可以思考一下,等效冗餘會對搜尋造成什麼影響?

如果我們繼續在等效冗餘上搜尋,只是會徒徒增加搜尋數的大小而已,所以我們要ban掉這些東西。

用stick舉個例子:若某一長度已經在長度的方案下搜尋過了是不合法的,那麼同樣長度的在該長度下也是不合法的,所以我們可以直接跳過這些等效冗餘的長度。

待更。。

個人對於套接字的一些理解!

本人還是一名在校大學生,最近在讀behrouz a.forouzan和firouz mosharraf寫的 計算機網路教程 自頂向下方法 今天剛剛看到講述套接字的部分,有一些感想,遂記錄下來。我們都知道,按照目前網路的分層方法,可以將計算機網路分成五層,應用層,運輸層,網路層,資料鏈路層,物理層。其...

對於切片的一些理解

使用技巧 type struct 乙個切片是由資料指標加上長度和容量組成的,類似與c 中的vector。var a int 等價於nil b int 表示乙個空的切片,不等於nil c int len,cap都為3的切片 d c 2 cap為3,len為2。與c共享一片記憶體位址 e c 0 2 c...

對於java 集合的一些理解

list set繼承自collection儲存引用型別 且只能乙個乙個儲存 arraylist linkedlist vector 都是繼承自list arraylist linkedlist初始化為10 擴容後為1.5倍 vector 為2倍 arraylist 底層採用的資料結構為陣列儲存元素,...