第 4 章 数组与链表 然而,数组需要一次性分配足够的连续内存空间,这可能导致内存浪费,数组扩容也需要额外的时间和空间成本。我们知道,存储数组的内存空间必须是连续的,而当数组非常大时,内存可能无法提供如此大的连续空间。与许多语言不同,Python 中的数字也被包装为对象,列表中存储的不是数字本身,而是对数字的引用。相反,链表的元素是分散存储的,在频繁的插入与删除操作中,更容易导致内存碎片化。是一个抽象的数据结构概念,它表示元素的有序集合,支持元素访问、修改、添加、删除和遍历等操作,无须使用者考虑容量限制的问题。
高精度数除低精度1 修罗王聚集了庞大的暗元素以施展隐匿魔法,该魔法施展后将对其周边的时空产生隐匿效果,当然,隐匿的效果好坏取决于是否将暗元素平均地分配在其周边时空,显然这涉及高精度除法的编程。考虑到邪狼的理解能力,修罗王不得不先将问题简化为:输入一被除数(位数≤5000),输入一除数(整型数据范围内),输出整数商,忽略小数。
存档002 0&&vis[i]==0){ //i为x未被访问的邻接点。if(a[xx][yy]能走 && vis[xx][yy]==0 没走过){int a[N+5][N+5]={0},vis[N+5]={0};for(多个扩展方向){ //遍历从x,y开始下一步所有可能走到的点。void dfs(int x,int y){ //第x行y列的点。
优先队列114514 (1)大顶堆:根结点最大,每个节点的值大于等于其孩子节点,用于升序(小->大)排列(2)小顶堆:根结点最小,每个节点的值小于等于其孩子节点,用于降序(大->小)排列(3) 相关操作1)入队(堆):在最下面的叶子结点右边进行插入(如果最下一层已满,就新增一层),插入后若不再满足堆的特点,则需向上进行动态调整,直到满足2)出队(堆):将根结点出队,再将最后1个结点放到根结点位置,然后将新的根结点向下进行动态调整,直到满足堆特点3)出队入队时间复杂度O(logn)