Results 11 comments of YQ

> install please I installed it on the remote Win10, the problem has been solved, thank you.

Have the same problem,and it's better to have a window to show the tunnels. ![image](https://user-images.githubusercontent.com/6851513/151641611-27b06eb9-98ae-4434-a843-634f413612a0.png)

WindTerm_2.3.1, Windows 10 Sorry , Last time I made a mistake I use SOCKS4 ![image](https://user-images.githubusercontent.com/6851513/158094863-fdeb59af-c24a-4e7b-81ae-8b77de8dbfa8.png) It will be : SOCKS 5 handshake request is invalid (I think this should be...

On windows , we can temporary use ssh command : ssh -D 1080 user@host ![image](https://user-images.githubusercontent.com/6851513/158102213-c7702554-5738-4b16-bff1-4a61bfcb8f1e.png)

也无法重新编辑

我觉得用先进先出的队列存储要遍历的节点,就是BFS;用先进后出的栈来存储即将遍历的节点就是DFS; BFS可以用集合,需要在遍历当前层级的节点时,把下层节点存储到临时集合变量中,保证先处理当前层节点,队列本身就能做到,所以不用临时变量。 回溯法是DFS,是因为它用函数递归的方法,相当于是用函数栈存储的节点信息,转换成迭代法就是自己用个栈结构存储节点就行了; 双向BFS不只要知道目标在哪里,是不是还必须有逆向路径,比如用链表实现二叉树,知道目标是那个节点,想知道从根到它的路径,如果是双向链表,就可以从目标往根找,否则只能从根往目标找。 不知理解的对不对。 非常感谢作者,你把特殊的算法个例进行了一般化,变成了各种框架,和编程中把特例需求一般化,解决了一般化的问题就解决了所有的特列是一个道理。我能有兴趣研究算法真是多亏了你。

第三题,为什么我默写的时候思维总是那么别扭。想的是先把右侧接到左侧,然后把左侧接到根上,这样需要判断左侧是否是null。

合法了就做选择,做下一层决策,省了一个continue语句 ,这样好不好 ```java for (int col = 0; col < n; col++) { // 选择合法位置 if (isValid(board, row, col)) { // 做选择 board[row][col] = 'Q'; // 进入下一行决策 backtrack(board, row +...

凑零钱问题。最少几枚硬币,肯定是先尽量用最大面值的凑,如果剩余的钱数凑不开,就减一个最大面值的,我写了这样一个算法,输入的硬币列表要先排序,想知道这个算动态规划么: ``` def coinChange(coins, amount): def dp(coins, amount): if amount == 0: return 0 if len(coins) == 0: return -1 bigest_coin = coins[0] other_coins = coins[1:] count_bigestcoin = amount //...

@maozhida 回复老哥 “就减去一个最大面值即:1-12=-11” 我的意思不是这样减,还是coins=[3,11], amoutn=12 首先,尝试最多数量的11,即一个11,此时 12 - 11*1 余1,余数1用3来凑,无法配出来,所以11的数量要减一个,即0个11。 然后12 - 11*0 余 12, 然后余数12用3来凑,恰好就得到了结果。 这种算法是贪心算法啊,刚学算法不懂,谢谢指出。