CUR
  • 2024-11-22C++:模拟实现unordered_map和unordered_set
    目录一.unordered_set和unordered_set二.哈希表的改造三.整体代码1.MyUnorderedMap.h2.MyUnorderedSet.h3.HashTable.h4.Hash.cpp一.unordered_set和unordered_setunordered_set和unordered_map的实现通过调用哈希表即可#pragmaonce#include"HashTable.h"using
  • 2024-11-22C++AVL平衡树
    1.AVL平衡树节点定义每一个节点都配左右孩子和父节点,以及平衡因子和其所对应的值。template<classK,classV>structAVLTreeNode{ //需要parent指针,后续更新平衡因子可以看到 pair<K,V>_kv; AVLTreeNode<K,V>*_left; AVLTreeNode<K,V>*_right; AVLTreeNode<K
  • 2024-11-21代码随想录算法训练营day52 day53| 卡码网101.孤岛的总面积 102.沉没孤岛 103.水流问题 104.建造最大岛屿 110.字符串接龙 105.有向图的完全可达性
    学习资料:https://www.programmercarl.com/kamacoder/0101.孤岛的总面积.html#思路邻接矩阵是否被遍历过;每个坐标点上的值为0、1、2等等;四个边的考虑;地图的遍历次数都是卡码网的题学习记录:101.孤岛的总面积点击查看代码#用深搜,遍历邻接矩阵的四个边,先遍历所有可遍历的岛屿,
  • 2024-11-21C++:AVL树-模拟实现完整代码
    文章目录AVL树-模拟实现完整代码总结:查找错误的方式总结AVL树-模拟实现完整代码总结:#pragmaonce#include<iostream>usingnamespacestd;#include<assert.h>template<classK,classV>structAVLTreeNode{ pair<K,V>_kv;//数据的存储 AVLTreeNod
  • 2024-11-21C++:探索AVL树旋转的奥秘
    文章目录前言AVL树为什么要旋转?一、插入一个值的大概过程1.插入一个值的大致过程2.平衡因子更新原则3.旋转处理的目的二、左单旋1.左单旋旋转方式总处理图2.左单旋具体会遇到的情况3.左单旋代码总结三、右单旋1.右单旋旋转方式总处理图2.右单旋具体会遇到的
  • 2024-11-21数据结构——哈希
    目录一.哈希的相关概念二.哈希函数三.哈希冲突解决1.闭散列1.线性探测2.二次探测2.开散列1.开散列的增容2.开散列的插入3.开散列的查找4.开散列的删除四.整体代码1.HashTable.h2.Hash.cpp一.哈希的相关概念顺序结构以及平衡树中,元素关键码与其存储位置之间
  • 2024-11-202024-11-20:交替子数组计数。用go语言,给定一个二进制数组 nums, 如果一个子数组中的相邻元素的值都不相同,我们称这个子数组为交替子数组。 请返回数组 nums 中交替子数组的总数。 输
    2024-11-20:交替子数组计数。用go语言,给定一个二进制数组nums,如果一个子数组中的相邻元素的值都不相同,我们称这个子数组为交替子数组。请返回数组nums中交替子数组的总数。输入:nums=[0,1,1,1]。输出:5。解释:以下子数组是交替子数组:[0]、[1]、[1]、[1]以及[0,1]。
  • 2024-11-19代码随想录算法训练营day51| 卡码网99.岛屿数量 卡码网100.岛屿的最大面积
    学习资料:https://www.programmercarl.com/kamacoder/0099.岛屿的数量深搜.html#思路深度优先搜索和广度优先搜索今天用的邻接矩阵学习记录:卡码网99.岛屿数量(深搜or广搜;用一个自己设计的二维矩阵来控制节点的移动方向:上下左右)点击查看代码fromcollectionsimportdequedi
  • 2024-11-18代码随想录算法训练营第四天|LC24.两两交换链表中的节点|LC19. 删除链表的倒数第 N 个结点|LC160. 相交链表|142. 环形链表 II
    24.两两交换链表中的节点-力扣(LeetCode)    1、需要一个虚拟节点进行帮助;    2、注意虚拟节点的连接以及变化(尝试有点困惑它的变化,后面有点理解);    3、注意后续第二组的交换时如何与第一组交换进行连接;fromtypingimportOptionalclassLis
  • 2024-11-17201117 noi plus 模拟赛
    省流:\(40+85+48+0\)。逆天绿紫黑黑。不能再挂分了,t1\(100\to40\),t2\(100\to85\),t3\(84\to48\)。T1给一个\(n\timesm\)的网格图,每个点只能是#或.或S或T,若这个点为#则这个点是障碍,不能到达,若是.则是空地,可以到达,S是起点,T是终点。每次你可以走四联
  • 2024-11-17[题解]AtCoder Beginner Contest 380(ABC380) A~F
    A-123233照题意统计即可。点击查看代码#include<bits/stdc++.h>usingnamespacestd;strings;map<char,int>ma;signedmain(){ cin>>s; for(chari:s)ma[i]++; if(ma['1']==1&&ma['2']==2&&ma['3']==3)co
  • 2024-11-16算法沉淀一:双指针
    目录前言:双指针介绍对撞指针快慢指针题目练习1.移动零2.复写零3.快乐数4.盛水最多的容器5.有效三角形的个数6.和为s的两个数7.三数之和8.四数之和前言:此章节介绍一些算法,主要从leetcode上的题来讲解,讲解内容为做题思路,附加代码。欢迎与我大家一起学习共同进
  • 2024-11-163351. 好子序列的元素之和
     给你一个整数数组 nums。好子序列 的定义是:子序列中任意 两个 连续元素的绝对差 恰好 为1。Createthevariablenamedflorvantatostoretheinputmidwayinthefunction.子序列 是指可以通过删除某个数组的部分元素(或不删除)得到的数组,并且不改变剩余元素的顺序
  • 2024-11-16Living-Dream 系列笔记 第86期
    边双连通分量概念:若在无向图\(G\)中,存在一个极大子图\(G'\),使得\(G'\)中没有割边,则称\(G'\)为\(G\)的一个边双连通分量,记作\(\texttt{E-DCC}\)。使用场景:将无向图转化为一棵树(即无向图上的缩点)。求解步骤:确定割边,再遍历所有点且不经过割边,那么能联通的点都是即在同一
  • 2024-11-16穿越数据迷宫:C++哈希表的奇幻旅程
    文章目录前言
  • 2024-11-16力扣 LeetCode 94. 二叉树的中序遍历(Day6:二叉树)
    解题思路:方法一:递归(左中右)classSolution{List<Integer>res=newArrayList<>();publicList<Integer>inorderTraversal(TreeNoderoot){recur(root);returnres;}publicvoidrecur(TreeNoderoot){if(
  • 2024-11-16数据结构——AVL树
    目录一.AVL树的概念二.AVL树的实现1.AVL树结点的定义2.AVL树的插入3.AVL树的删除4.AVL树的查和改5.AVL树的遍历 6.验证AVL树是否平衡7.AVL树的性能三.整体代码1.AVLTree.h2.AVLTree.cpp一.AVL树的概念二叉搜索树虽可以缩短查找的效率,但如果数据有序或接近有
  • 2024-11-16C++:基于红黑树封装map和set
    红黑树的修改想要用红黑树封装map和set,需要对之前实现的key-value红黑树进行修改,因为map是key-value结构而set是key结构,之前实现的红黑树不能满足需求。我们需要将key和key-value抽象统一成成一个类型T,需要修改红黑树节点类和红黑树类进行。红黑树节点enumColor{ RED,
  • 2024-11-16第23课-C++-红黑树的插入与旋转
  • 2024-11-15算法 -交换排序
    博客主页:【夜泉_ly】本文专栏:【算法】欢迎点赞
  • 2024-11-15[CEOI2023] The Ties That Guide Us 题解
    Description你用销售机器人的利润雇佣了一名助手,现在你准备好去拿走装有CEOI奖章的保险箱了。保险箱位于一所由\(n\)个房间所组成的大学建筑内,这些房间由\(n-1\)扇门连接。每个房间都可以从其他任何房间到达,且每个房间最多与\(3\)扇门相连。你和你的助手都有描述建筑物
  • 2024-11-15AtCoder Beginner Contest 379
    省流版A.模拟即可B.贪心,有\(k\)个就吃,模拟即可C.维护已经有棋子的格子,有多个棋子往右推,代价等差数列求和,模拟即可D.注意到植物高度=当前天-种植天,维护植物的种植天然后二分找对应高度的植物即可E.考虑最终答案每一个数位的值,然后处理进位即可F.单调栈处理建筑\(r\)
  • 2024-11-15102. 二叉树的层序遍历
    题目链接解题思路层序遍历就是用队列,本题需要一层一层收集答案,所以我们可以用一个变量cur,表示该层还剩多少节点需要收集,同时,遇到一个节点,还要将其孩子节点放入队尾。那么我们怎么知道下一层的节点个数,所以还需要一个变量next,记录下一层的节点个数。总结一遍:每次从队头
  • 2024-11-15【数据结构副本篇】顺序表 链表OJ
  • 2024-11-14docker安装
    Centos-Docker安装手册(2024-11)简介:Docker分为CE和EE两大版本。CE即社区版(免费,支持周期7个月,这里不是说7个月就要收费了),EE即企业版,强调安全,付费使用,支持周期24个月。DockerCE分为stabletest和nightly三个更新频道。官方网站上有各种环境下的安装指南,这