博客 RSS 訂閱

dl1024 - 20241107,LeetCode 每日一題,使用 Go 計算兩數相加

思路 模擬加法:鏈表存儲的是逆序數位,因此從頭節點開始,逐位相加可以模擬正常的加法。每兩個節點的值相加,並記錄進位。 逐節點相加: 創建一個新的鏈表,用於存儲結果,每次將兩個鏈表對應節點的值加上進位值,結果存儲到新鏈表的節點中。 計算過程中,將(l1.Val + l2.Val + carry)相加的結果拆成兩個部分,一部分是當前位的值,另一部分是進位值(例如:(l1.

leetcode , 算法

收藏 評論

老馬嘯西風 - buy-and-sell-stock-with-cooldown 力扣 714. 買賣股票的最佳時機包含手續費

買賣股票系列 【leetcode】40-best-time-to-buy-and-sell-stock 力扣 121. 買賣股票的最佳時機 【leetcode】41-best-time-to-buy-and-sell-stock-ii 力扣 122. 買賣股票的最佳時機 II 【leetcode】42-best-time-to-buy-and-sell-stock-iii 力扣 123. 買賣股票

leetcode , 動態規劃 , 算法 , dp

收藏 評論

moax - lintcode179:更新二進制位

lintcode題目鏈接:更新二進制位 描述 給出兩個32位的整數\( N \)和\( M \),以及兩個二進制位的位置\( i \)和\( j \)。寫一個方法來使得N中的第\( i \)到\( j \)位等於\( M \)(\( M \)會是\( N \)中從第\( i \)位開始到第\( j \)位的子串) 在該函數裏給出的\( N \)和\( M \)都是十進制位,同時返回的答案也應

binary , bit , leetcode , lintcode , coding

收藏 評論

水冗水孚 - 算法的應用場景之尋找最近數&時間線組件錨點跳轉對應位置

需求描述 前兩天和以前公司的同事聊天,他提到在刷leetcode,並提到算法感覺不接地氣 似乎也沒有什麼應用場景 於是乎,筆者翻出一個案例需求給到他 看完以後,他感嘆道: 還是自己見得少了... 需求:假設有一個時間線組件,按照時間順序展示對應內容,如下圖 這個時間線可能很長,能有好幾個月 為了提高用户體驗,當用户進入這個頁面的時候 我們需要看看當天是哪一天,同時滾動到,距

vue.js , leetcode , element-plus

收藏 評論

程序員Seven - 反轉鏈表(花式反轉)

題目描述 給你單鏈表的頭節點 head ,請你反轉鏈表,並返回反轉後的鏈表。 示例 1: 輸入:head = [1,2,3,4,5] 輸出:[5,4,3,2,1] 示例 2: 輸入:head = [1,2] 輸出:[2,1] 示例 3: 輸入:head = [] 輸出:[] 提示: 鏈表中節點的數目範圍是 [0, 5000] -5000 = Node.val = 5000 進階:鏈表可

leetcode , JAVA , 後端

收藏 評論

程序員Seven - 從尾到頭打印鏈表

題目描述 輸入一個鏈表的頭節點,按鏈表從尾到頭的順序返回每個節點的值(用數組返回)。 如輸入{1,2,3}的鏈表如下圖: 返回一個數組為[3,2,1] 0 = 鏈表長度 = 10000 示例1 輸入: {1,2,3} 返回值: [3,2,1] 示例2 輸入: {67,0,24,58} 返回值: [58,24,0,67] 思路及解答 ⾸先我們需要想⽤哪些解法可以解,⼤概有如下: 使⽤棧 使⽤

leetcode , JAVA , 後端

收藏 評論

程序員Seven - 算法題:數組中的第k個最大元素

力扣鏈接 題意 給定整數數組nums和整數k,請返回數組中第k 個最大的元素。 請注意,你需要找的是數組排序後的第k個最大的元素,而不是第k個不同的元素。 你必須設計並實現時間複雜度為O(n)的算法解決此問題。 示例 1: 輸入: [3,2,1,5,6,4], k = 2 輸出: 5 示例2: 輸入: [3,2,3,1,2,4,5,5,6], k = 4 輸出: 4 提示: 1 =

leetcode , JAVA , 後端

收藏 評論

程序員Seven - 劍指offer-1、⼆維數組中的查找

題目描述 在⼀個⼆維數組中(每個⼀維數組的⻓度相同),每⼀⾏都按照從左到右遞增的順序排序,每⼀列都按照從上到下遞增的順序排序。請完成⼀個函數,輸⼊這樣的⼀個⼆維數組和⼀個整數,判斷數組中是否含有該整數。 例⼦,輸⼊⼀個數組: num[3][4] = [ 1 , 4 , 6 , 28 , 2 , 7 , 32 , 30 , 10 , 11 , 67 , 79 ] 需要查找⼀個數字 32 ,則返回 t

leetcode , JAVA , 後端

收藏 評論

程序員Seven - 劍指offer-3、從尾到頭打印鏈表

題目描述 輸入一個鏈表的頭節點,按鏈表從尾到頭的順序返回每個節點的值(用數組返回)。 如輸入{1,2,3}的鏈表如下圖: 返回一個數組為[3,2,1] 0 = 鏈表長度 = 10000 示例1 輸入: {1,2,3} 返回值: [3,2,1] 示例2 輸入: {67,0,24,58} 返回值: [58,24,0,67] 思路及解答 ⾸先我們需要想⽤哪些解法可以解,⼤概有如下: 使⽤棧 使⽤

leetcode , JAVA , 後端

收藏 評論

程序員Seven - 劍指offer-9-變態跳台階

題⽬描述 ⼀只⻘蛙⼀次可以跳上1 級台階,也可以跳上2級……它也可以跳上n級。求該⻘蛙跳上⼀個n級的台階總共有多少種跳法。 思路及解答 數學歸納法 ⾸先⻘蛙⼀次可以跳 1 , 2 , 3 到 n 級。假設函數是f(n) ,則: ⻘蛙跳到第⼀級是f(1)=1 ,只有⼀種跳法。 ⻘蛙跳到第⼆級,可以是直接跳到第⼆級,也可以是從第⼀級直接跳。所以f(2)=f(1)+1 ⻘蛙跳到第三級,可以從第0

leetcode , JAVA , 後端

收藏 評論

要出家的扁豆 - 鏈表相交 golang 題解

鏈表相交 題目: 給你兩個單鏈表的頭節點 headA 和 headB ,請你找出並返回兩個單鏈表相交的起始節點。如果兩個鏈表沒有交點,返回 null 。 輸入:intersectVal = 8, listA = [4,1,8,4,5], listB = [5,0,1,8,4,5], skipA = 2, skipB = 3 輸出:Intersected at '8' 解釋:相交節點的

leetcode

收藏 評論

Hunter - LeetCode熱題一之兩數之和

本文首發於公眾號:Hunter後端 原文鏈接:LeetCode熱題一之兩數之和 題目 給定一個整數數組 nums 和一個整數目標值 target,請你在該數組中找出和為目標值 target 的那兩個整數,並返回它們的數組下標。 你可以假設每種輸入只會對應一個答案,並且你不能使用兩次相同的元素。 你可以按任意順序返回答案。 題目來源 此題來源於 LeetCode 題庫序號 1。 L

leetcode , go , 後端 , Python

收藏 評論

要出家的扁豆 - [leetcode]876. 鏈表的中間結點

示例 輸入:head = [1,2,3,4,5] 輸出:[3,4,5] 解釋:鏈表只有一箇中間結點,值為 3 。 輸入:head = [1,2,3,4,5,6] 輸出:[4,5,6] 解釋:該鏈表有兩個中間結點,值分別為 3 和 4 ,返回第二個結點。 思路 數組 鏈表轉存數組,有順序下標,根據長度判斷中間點。 遍歷鏈表 新建數組 鏈表填充到數組中 返回數

leetcode , go

收藏 評論

putao - ebpf--入門03(網絡應用各種場景)

bpf_cmd: BPF_MAP_CREATE: 創建一個新的BPF映射。 BPF_MAP_LOOKUP_ELEM: 在BPF映射中查找一個元素。 BPF_MAP_UPDATE_ELEM: 更新BPF映射中的一個元素。 BPF_MAP_DELETE_ELEM: 從BPF映射中刪除一個元素。 BPF_MAP_GET_NEXT_KEY: 獲取BPF映射中下一個鍵的迭代器。 BPF_PROG_LOAD

ebpf , 網絡傳輸協議

收藏 評論

putao - ebpf--入門04(支持的各種鈎子以及同時使用多個ebpf 插件)

支持同時使用多個eBPF程序? 可以將多個 eBPF 程序加載到不同的鈎子點,或者在同一個鈎子點上串聯多個 eBPF 程序。例如,可以在 XDP 層同時加載 URL 過濾、IPv6 過濾和 Cookie 過濾程序。 場景01: #include linux/bpf.h #include bpf/bpf_helpers.h #include linux/if_ether.h #include

ebpf , 網絡傳輸協議

收藏 評論

putao - ebpf--入門05(流量控制)

先講tc,再講ebpf tc 的底層原理 隊列管理器(qdisc) 隊列管理器是 tc 的核心組件,用於管理數據包的隊列。不同的 qdisc 實現了不同的流量控制策略,如 FIFO、TBF(Token Bucket Filter)、HTB(Hierarchical Token Bucket)等。 FIFO(First In, First Out):最簡單的隊列管理器,按照數

ebpf , 網絡傳輸協議

收藏 評論

putao - ebpf--入門06( kprobe, socket ,Tracepoint, perf event 使用案例)

過濾和監控 socket 層的數據包 socket 類型的 eBPF 程序,返回值類型是 int,並且返回值用於決定如何處理捕獲的數據包。返回 0 表示丟棄數據包,返回非零值表示接受數據包。 #include linux/bpf.h #include bpf/bpf_helpers.h #include netinet/in.h #include linux/virtio_net.h SE

ebpf , 網絡傳輸協議

收藏 評論

putao - ebpf--入門06(lsm 應用場景)

ebpf不僅可以用於網絡數據包過濾和性能監控,還可以應用於安全領域,特別是在與 LSM(Linux Security Modules)結合使用時。通過 eBPF 和 LSM 的結合,可以實現更靈活和高效的安全策略,包括訪問控制、安全審計和入侵檢測等。 安全審計: 使用 eBPF 程序記錄特定系統調用的審計日誌。 SEC("lsm/file_open") int BPF_PROG(audit

ebpf , 網絡傳輸協議

收藏 評論

網絡安全那些事兒 - 一文讀懂UDP協議

UDP全稱User Datagram Protocol,中文叫做用户數據報協議。它是一種無連接的、不可靠的、基於數據報的傳輸層協議,它工作在OSI模型的傳輸層(第四層),與TCP協議並列。UDP協議主要用於那些對實時性要求高、但可以接受少量丟包的應用場景,如視頻流、音頻流、DNS(域名系統)查詢等。 UDP的協議有以下主要特點: 無連接: 在發送數據之前,UDP不需要在發送方和接

udp , 網絡傳輸協議

收藏 評論

putao - 軟件定義網絡--01 (OVS+ ryu + Mininet 環境準備)

創建新的網絡命名空間: sudo ip netns add ns1 sudo ip netns add ns2 創建一對 veth 接口:(連接2個不同的命名空間) sudo ip link add veth1 type veth peer name veth2 將 veth1 移動到命名空間 ns1,將 veth2 移動到命名空間 ns2: sudo ip link set veth1 netn

sdn , 網絡傳輸協議

收藏 評論

putao - 軟件定義網絡--02《 linux 開源網絡全棧詳解》閲讀記錄(VXLAN等)

FlowVisor 是一種網絡虛擬化平台,專為軟件定義網絡(SDN)環境設計。它允許多個獨立的控制器同時管理同一個物理網絡,而不會相互干擾。FlowVisor 的主要功能是將網絡資源劃分成多個邏輯視圖(slices),每個視圖都可以由不同的控制器獨立管理。這種虛擬化使得網絡資源可以更靈活地進行分配和管理。 FlowVisor 的主要功能和特性 網絡切片:FlowVisor 能夠將物理網絡劃分成多個

sdn , 網絡傳輸協議

收藏 評論

putao - 軟件定義網絡--03 (P4 語言, 以及rust進行交互)

P4 語言的核心思想是將數據包處理邏輯抽象為以下幾個主要部分: 數據包解析(Parsing):定義如何從數據包中提取字段。 表匹配(Table Matching):定義如何根據數據包字段進行匹配和查找。 數據包處理(Processing):定義如何對匹配結果進行處理和修改。 數據包轉發(Forwarding):定義如何將處理後的數據包轉發到適當的端口。 語法案例: // 頭部定義

sdn , 網絡傳輸協議

收藏 評論

putao - 軟件定義網絡--04( 交換機)

設置 OVS 交換機和虛擬接口 # 啓動 OVS 服務 sudo service openvswitch-switch start # 創建一個 OVS 交換機 sudo ovs-vsctl add-br br0 # 創建兩個 veth 對 sudo ip link add veth1 type veth peer name ovs-veth1 sudo ip link add veth2 t

sdn , 網絡傳輸協議

收藏 評論

putao - 軟件定義網絡--05(ryu +onos 案例目錄)

ryu 源碼的一些案例 bmpstation.py cbench.py 説明: 用於性能測試的應用,通常與 Cbench 工具一起使用來測試 OpenFlow 控制器的性能。 conf_switch_key.py 説明: 配置交換機密鑰的示例應用,可能用於交換機與控制器之間的安全通信。 example_switch_13.py 説明: OpenFlow 1.

sdn , 網絡傳輸協議

收藏 評論