1.介绍动态数组、栈、队列都是依赖底层静态数组,通过resize解决固定容量的问题。链表:真正的动态数据结构。数组和链表的对比数组:支持索引快速查询。链表:动态数据结构,但不能快速查询。2.链表基础操作2.1在链表头添加元素2.2在链表中添加元素代码:package mainimport "fmt"type Node struct { e interface{} next *No
1.数组动态扩缩容数组的实现package mainimport ( "bytes" "fmt")type Array struct { data []interface{} size int}func New(capacity int) *Array { return &Array{ data: make([]interface{}, capa
1.选择排序-- O(n^2),一直为O(n^2)先把最小的拿出来剩下的再把最小的拿出来每次选择还没处理的元素中的最小元素package mainimport "fmt"//选择排序----算法复杂度=O(n^2)//先把最小的拿出来//剩下的再把最小的拿出来//每次选择还没处理的元素中的最小元素func selectionSort(sourceList []int) []int { for
1.O(n)-线性查找法for(int i=0;i<data.length;i++) if (data[i].equals(target)) return i;2.O(n^2)一个数组中可以组成哪些数据对for(int i=0;i<data.length;i++) for(int j=i+1;j<data.length;j++) //获取到一个数据对(data[i
Copyright © 2005-2024 51CTO.COM 版权所有 京ICP证060544号