開心燦爛go開發面試題

1.給你單鏈表的頭節點 head ,請你反轉鏈表,并返回反轉后的鏈表。
示例1:
輸入:head = [1,2,3,4,5]
輸出:[5,4,3,2,1]

package main

import “fmt”

type ListNode struct {
Val int
Next *ListNode
}

func main() {
l1 := &ListNode{Val: 1}
l2 := &ListNode{Val: 2}
l3 := &ListNode{Val: 3}
l4 := &ListNode{Val: 4}
l5 := &ListNode{Val: 5}
l1.Next = l2
l2.Next = l3
l3.Next = l4
l4.Next = l5
newlist := reverseList(l1)
for newlist != nil {
fmt.Print(newlist.Val)
if newlist.Next != nil {
fmt.Print(“,”)
}
newlist = newlist.Next
}
fmt.Println()
}

func reverseList(head *ListNode) *ListNode {
if head == nil || head.Next == nil {
return head
}
var prev *ListNode
cur := head
for cur != nil {
cur.Next, prev, cur = prev, cur, cur.Next
}
return prev
}

2.給你一個整數數組 nums 和一個整數 k 。你需要找到 nums 中長度為 k 的 子序列 ,且這個子序列的 和最大 。
請你返回 任意 一個長度為 k 的整數子序列。
子序列 定義為從一個數組里刪除一些元素后,不改變剩下元素的順序得到的數組。
示例1:
輸入:nums = [2,1,3,3], k = 2
輸出:[3,3]
示例2:
輸入:nums = [-1,-2,3,4], k = 3
輸出:[-1,3,4]
示例3:
輸入:nums = [3,4,3,3], k = 2
輸出:[3,4]
package main

import (
“fmt”
“sort”
“strconv”
“strings”
)

func main() {
//nums := []int{2, 1, 3, 3}
//k := 2
nums := []int{-1, -2, 3, 4}
k := 3
newSlice := SearchMaxSlice(nums, k)
fmt.Println(newSlice)
}

func SearchMaxSlice(nums []int, k int) []int {
n := len(nums)
temp := make([]int, n)
copy(temp, nums)
sort.Slice(temp, func(i, j int) bool {
return temp[i] > temp[j]
})
newtemp := temp[:k]
newslice := []int{}
newslicestr := fmt.Sprint(newtemp)
for _, v := range nums {
if len(newslice) == k {
break
}
if strings.Contains(newslicestr, strconv.Itoa(v)) {
newslice = append(newslice, v)
}
}
return newslice
}

3.給你一個整數數組 nums 和一個整數 k ,請你統計并返回 該數組中和為 k 的子數組的個數 。
子數組是數組中元素的連續非空序列。
示例1:
輸入:nums = [1,1,1], k = 2
輸出:2
示例2:
輸入:nums = [1,2,3], k = 3
輸出:2

func main() {
//slic := []int{1, 1, 1}
slic := []int{1, 2, 3}
k := 3
fmt.Println(calSliceCount(slic, k))
}

func calSliceCount(nums []int, k int) int {
count := 0
for i := 0; i < len(nums); i++ {
sum := 0
for j := i; j < len(nums); j++ {
sum += nums[j]
if sum == k {
count++
}
}
}
return count
}

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/909386.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/909386.shtml
英文地址,請注明出處:http://en.pswp.cn/news/909386.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

【Flutter】程序報錯導致的灰屏總結

【Flutter】程序報錯導致的灰屏總結 一、前言 在 Flutter 中&#xff0c;出現“灰屏”&#xff08;grey screen&#xff09;通常意味著 應用發生了未捕獲的錯誤&#xff0c;導致框架無法正確構建 UI。 這也是在面試過程中常常問到的。 二、錯誤分類 常見的會導致灰屏的錯誤…

基于物聯網設計的智慧家庭健康醫療系統

1. 項目開發背景 隨著物聯網&#xff08;IoT&#xff09;技術的發展&#xff0c;智能家居系統逐漸融入到我們的日常生活中&#xff0c;成為提高生活質量、增強家庭安全、提升健康管理的重要工具。特別是在健康醫療領域&#xff0c;借助物聯網技術&#xff0c;智能家居不僅能夠…

設計模式精講 Day 1:單例模式(Singleton Pattern)

【設計模式精講 Day 1】單例模式&#xff08;Singleton Pattern&#xff09; 文章內容 開篇 在軟件開發中&#xff0c;設計模式是解決常見問題的通用解決方案。作為“設計模式精講”系列的第一天&#xff0c;我們將深入講解單例模式&#xff08;Singleton Pattern&#xff09…

【衛星通信】3GPP標準提案:面向NB-IoT(GEO)場景的IMS信令優化方案-降低衛星通信場景下的語音呼叫建立時延

一、引言 隨著5G非地面網絡&#xff08;NTN&#xff09;技術的演進&#xff0c;基于NB-IoT的衛星通信&#xff08;如GEO地球同步軌道衛星&#xff09;逐漸成為偏遠地區語音服務的重要補充。然而&#xff0c;傳統IP多媒體子系統&#xff08;IMS&#xff09;的信令流程在帶寬受限…

軟件測試之簡單基礎的安全測試方法(另外包含軟測面試題庫)

文章目錄 前言安全測試是什么簡單基礎的安全測試方法密碼安全操作權限驗證SQL注入xss腳本攻擊文件上傳下載安全漏洞掃描Web掃描APP掃描 面試題庫&#xff08;僅參考&#xff09;參考目錄 前言 閱讀本文前請注意最后編輯時間&#xff0c;文章內容可能與目前最新的技術發展情況相…

LCEL:LangChain 表達式語言詳解與測試工程師的實踐指南

引言 在 AI 應用開發中&#xff0c;如何高效地組合多個步驟&#xff08;如提示模板、模型調用、輸出解析&#xff09;并優化執行流程&#xff0c;是開發者和測試工程師共同面臨的挑戰。LangChain Expression Language (LCEL) 作為 LangChain 的核心功能之一&#xff0c;提供了…

LeetCode面試經典150題—旋轉數組—LeetCode189

原題請見&#xff1a;Leetcode189-旋轉數組 1、題目描述 2、題目分析 首先容易想到的最簡單的方案&#xff0c;是算出來移動K步之后&#xff0c;新數組的每一個坐標與原坐標的映射關系&#xff0c;然后根據映射關系放到一個全新的數組&#xff0c;再把新數組的值賦給原數組。…

2.5 Rviz使用教程

新建終端&#xff0c;鍵入命令 roslaunch wpr_simulation wpb_simple.launch 再新建終端&#xff0c;鍵入命令 rviz修改Fix Frame 為 base_footprint 點擊add之后選擇RobotModel 再增加一個LaserScan 選擇激光雷達話題 可視化效果 配置的兩種方法 1.在Gazebo運行的基礎上&…

基于SpringBoot+JSP開發的招投標采購信息平臺

角色&#xff1a; 管理員、普通用戶 技術&#xff1a; 后端&#xff1a;Spring Boot Mybatis-Plus MySQL 前端&#xff1a;JSP 核心功能&#xff1a; 該平臺是一個用于管理投標和招標信息的系統&#xff0c;主要提供信息發布、用戶管理和交易管理等核心功能。 功能介紹…

【項目實訓#10】HarmonyOS API文檔RAG檢索系統后端實現

【項目實訓#10】HarmonyOS API文檔RAG檢索系統后端實現 文章目錄 【項目實訓#10】HarmonyOS API文檔RAG檢索系統后端實現一、背景簡介二、RAG技術原理與架構設計2.1 RAG技術原理回顧與提升2.2 系統架構設計 三、RAG引擎核心實現3.1 RAG引擎初始化3.2 查詢向量化3.3 文檔檢索實現…

專注于PLC數據采集MES交互解決方案

專注于PLC數據采集MES交互解決方案 前篇文章我們講到當下的制造行業在工業4.0的大趨勢下&#xff0c;MES系統成為現場制造過程管制的有利武器&#xff0c;更是質量追蹤的一把好工具。我們要知道產品在各個加工環節的結果。除了人工在各個制造環節錄入制造結果外&#xff0c;更…

微信小程序實現文字逐行動畫效果渲染顯示

1. 微信小程序實現文字逐行動畫效果渲染顯示 在微信小程序開發中,為了文字逐行動畫效果渲染可以通過JavaScript 和 WXML 的動態數據綁定來實現,實現文字逐行顯示的效果,同時結合 CSS 動畫提升視覺體驗。 ??如果需要更復雜的動畫效果(如縮放、移動等),可以使用微信小程序…

Redux 原理深度剖析

1. Redux 實現 定義 Action 和 Reducer 類型&#xff0c;為了簡便&#xff0c;先用JavaScript來演示。 1.1. 定義Action和Reducer類型 // 定義 Action 類型 /*** typedef {Object} Action* property {string} type*/// 定義 Reducer 類型 /*** callback Reducer* param {any…

【LangChain】4 基于文檔的問答

對于給定的文檔, 比如從PDF、網頁、公司主頁中提取構建的內部文檔集合&#xff0c;我們可以使用大語言模型來回答關于這些文檔內容的問題&#xff0c;以幫助用戶更有效地獲取和使用他們所需要的信息。這種方式非常有效且靈活地適用于實際應用場景&#xff0c;因為它不僅僅利用大…

基于Netty的TCP Server端和Client端解決正向隔離網閘數據透傳問題

背景 因為安裝了正向隔離網閘&#xff0c;導致數據傳輸的時候僅支持TCP協議和UDP協議&#xff0c;因此需要開發TCP Client和Server服務來將數據透傳&#xff0c;當前環境是獲取的數據并將數據轉發到kafka 1.引入依賴 <dependency><groupId>io.netty</groupId>…

Cursor鏈接遠程服務器實現項目部署

想獲取更多高質量的Java技術文章&#xff1f;歡迎訪問Java技術小館官網&#xff0c;持續更新優質內容&#xff0c;助力技術成長 技術小館官網 在軟件開發過程中&#xff0c;遠程服務器開發是一種常見的工作模式。通過遠程連接服務器進行代碼編寫和環境配置&#xff0c;可以充分…

Redis集群模式之Redis Cluster(3)

上篇文章我們講解了Redis Cluster的狀態監測與恢復過程&#xff0c;這篇文章我們來進行Redis Cluster內容的收尾&#xff0c;將其擴容和縮容的過程進行講解&#xff0c;并分析RedisCluster的優缺點。 擴容和縮容 當集群中出現容量限制或者其他一些原因需要擴容時&#xff0c;R…

Cursor ReAct Agent技術架構

一、架構核心思想 “零熵操作交給AI”理念 Cursor通過ReAct模式實現編程中重復性工作的自動化&#xff1a; 零熵操作&#xff1a;機械性任務&#xff08;代碼補全/格式化/重構/語法修復/導入管理&#xff09; Tab-away機制&#xff1a;一鍵接受AI建議&#xff0c;保持思維連續…

國學IP行業實戰洞察:聚焦創客匠人,解鎖創始人IP與知識變現新路徑

國學行業正經歷“文化價值”與“商業變現”的深度融合&#xff0c;2023年市場規模突破千億大關&#xff0c;年增速超 10%。在“IP化數字化”浪潮中&#xff0c;創客匠人作為垂直領域技術服務商&#xff0c;以全鏈路工具矩陣為支點&#xff0c;撬動國學創始人IP從內容生產到商業…

R語言開發入門完整指南

R語言開發入門完整指南 目錄 R語言簡介環境配置包管理基本語法數據類型和結構數據操作統計分析數據可視化編程結構實用技巧學習資源 R語言簡介 R是一種專為統計計算和圖形設計的編程語言&#xff0c;廣泛應用于數據分析、統計建模、機器學習和數據可視化。R語言具有以下特點…