Go切片特点笔记

特点

1.只有append操作

不支持随机增删

2.支持子切片

数组和切片都可以通过start:end 的形式

来获取子切片:

1.arrstart:end,获得start,end)之间的元素。 2.arr\[:end,获得0,end)之间的元素。 3.arr\[start:,获得[start,len(arr))之间的元素。

都是左闭右开!

3.内存共享问题

核心:共享数组。

子切片和切片究竟会不会互相影响,就抓住一点:

它们是不是还共享数组?

就是如果它们结构没有变化,那肯定是共享的;但是结构变化了,就可能不是共享了

什么情况下结构会发生变化?
扩容 了,

所以,任何情况下要判断是否内存共享,就注意一个点:有没有扩容。

相关推荐
梓䈑4 小时前
【算法题攻略】BFS 解决FloodFill 算法、最短路问题、多源BFS 和 拓扑排序
c++·算法·宽度优先
Adios7946 小时前
设置交集大小至少为2
数据结构·算法·leetcode
来一碗刘肉面13 小时前
栈的应用(表达式求值)
数据结构·算法
xiaowang1234shs14 小时前
怪兽轻断食技术深度测评:从断食计时引擎到AI识别算法的工程实践解析
数据库·人工智能·算法·macos·机器学习·p2p·visual studio
小果因子实验室14 小时前
量化研究--策略迁移算法1研究
算法
疯狂打码的少年14 小时前
【软件工程】软件质量保证(ISO/IEC 9126质量特性)
笔记
Web极客码14 小时前
如何用三段式确定性剪枝,为 LLM Agent 砍掉 35% 的 Token 成本?
服务器·人工智能·算法·机器学习
程序猿乐锅15 小时前
【数据结构与算法 | 第六篇】力扣1109,1094差分数组
java·算法·leetcode
wabs66615 小时前
关于图论【广度优先搜索的理论基础】
算法·图论·宽度优先