UDP安全吗,怎么修改让其安全?
packet header
QUIC FrameHeader
TCP的三个窗口 滑动 发送 拥塞, 怎么用UDP使用类似的功能 怎么确认消息是否收到?
TCP的拥塞控制是怎么样的
HTTPS的握手流程
MySQL为什么用B+树 红黑树等结构也能在叶子节点实现双向链表,为什么不能这样做
数据页是什么 怎么存储数据的 以什么样的形式进行存储数据页本身的?
InnoDB的Buffer Pool是什么?
Golang中的Map底层是怎么实现的 冲突了怎么办?
参考:https://www.nowcoder.com/discuss/654439348040970240
Redis的怎么删除过期的键 Redis内存淘汰有哪些?
过期删除
内存淘汰
clickhouse为什么快,原理是什么?
参考:https://www.nowcoder.com/discuss/460559332506124288
参考:https://blog.csdn.net/goTsHgo/article/details/142164601
进程、线程的区别?
给一个字符串,找到满足元素种数不超过k个的最长子串
https://www.nowcoder.com/questionTerminal/04c926ef687340c3842a72edb5c23ede
package main/*** 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可** * @param s string字符串 * @param k int整型 * @return int整型
*/
func longestSubstring( s string , k int ) int {ans := 0className := 0book := [26]int{}for i,j := 0,0;j<len(s);j++{if book[s[j]-'a']==0{className++}book[s[j]-'a']++for className>k{if book[s[i]-'a']==1{className--}book[s[i]-'a']--i++}if j-i+1>ans{ans = j-i+1}}return ans
}
能用1 14 144拼成的数字称为幸运数,给定x,找出所有小于等于x的幸运数,按升序返回,不能用排序
package mainimport ("fmt"
)func generateLuckyNumbers(x int) []int {luckyNumbers := make(map[int]struct{})var result []intvar dfs func(current int)dfs = func(current int) {if current > x {return}luckyNumbers[current] = struct{}{}// Generate new numbers by appending 1, 14, and 144dfs(current*10 + 1)dfs(current*10 + 14)dfs(current*100 + 144)}// Start the DFS traversal from 0dfs(0)// Collect results and ensure sorted order by insertionfor num := range luckyNumbers {if num > 0 { // We only want positive lucky numbersresult = append(result, num)}}// Print results in ascending orderfor i := 0; i <= x; i++ {if contains(result, i) {fmt.Println(i)}}return result
}// Helper function to check if a number is in the results
func contains(slice []int, num int) bool {for _, v := range slice {if v == num {return true}}return false
}func main() {x := 1000 // You can change this value to test with different xgenerateLuckyNumbers(x)
}