mirror of
				https://github.com/chefyuan/algorithm-base.git
				synced 2025-10-30 19:23:04 +00:00 
			
		
		
		
	添加Go语言题解
This commit is contained in:
		| @@ -72,3 +72,37 @@ class Solution { | ||||
|     } | ||||
| } | ||||
| ``` | ||||
|  | ||||
| GO Code: | ||||
|  | ||||
| ```go | ||||
| func maxSlidingWindow(nums []int, k int) []int { | ||||
|     l := len(nums) | ||||
|     if l == 0 { | ||||
|         return nums | ||||
|     } | ||||
|  | ||||
|     arr   := []int{} | ||||
|     // 维护一个单调递减的双向队列 | ||||
|     deque := []int{} | ||||
|     for i := 0; i < k; i++ { | ||||
|         for len(deque) != 0 && deque[len(deque) - 1] < nums[i] { | ||||
|             deque = deque[:len(deque) - 1] | ||||
|         } | ||||
|         deque = append(deque, nums[i]) | ||||
|     } | ||||
|  | ||||
|     arr = append(arr, deque[0]) | ||||
|     for i := k; i < l; i++ { | ||||
|         if nums[i - k] == deque[0] { | ||||
|             deque = deque[1:] | ||||
|         } | ||||
|         for len(deque) != 0 && deque[len(deque) - 1] < nums[i] { | ||||
|             deque = deque[:len(deque) - 1] | ||||
|         } | ||||
|         deque = append(deque, nums[i]) | ||||
|         arr = append(arr, deque[0]) | ||||
|     } | ||||
|     return arr | ||||
| } | ||||
| ``` | ||||
|   | ||||
		Reference in New Issue
	
	Block a user