logo
publist
写文章

简介

该用户还未填写简介

擅长的技术栈

可提供的服务

暂无可提供的服务

洛谷 U228721:反转单链表

本代码由于用到 while(cin>>x),所以在输入完样例 1 2 3 后,需要按回车键,然后再按下 Ctrl+Z 键,才能看到运行结果 3 2 1 None。

#数据结构
洛谷 B4051:[GESP202409 五级] 小杨的武器 ← 贪心算法

通过‌局部最优选择‌(正收益加给最大,负收益加给最小)保证了最终最大值的全局最优性,是解决此问题的标准方法。

#贪心算法
洛谷 B3928:[GESP202312 四级] 田忌赛马 ← 双指针 + 排序 + 贪心

● 田忌赛马模型的核心记忆点:排序定强弱,双指针控匹配,弱马赢弱马,弱马耗强马。

单链表的“按值查找”算法代码

单链表的“按值查找”算法代码。

洛谷 P10722:[GESP202406 六级] 二叉树 ← dfs + 邻接表 / 链式前向星

● 当一个节点被反转偶数次时,就相当于没反转。题中所陈述的操作“以这个节点为根的子树内所有节点的颜色反转”,含对根结点进行反转。

#数据结构
AcWing 476:对称二叉树

基本思路:(1)以二叉树的每一个结点为根结点,寻找对称二叉树。(2)统计找到的对称二叉树的结点数。(3)比较获得最大的结点数。

单调队列 → 常用于动态规划问题的优化

单调队列是指在队尾入队出队,在队首出队,且其元素具有单调性的特殊队列。其中,在队尾入队出队的操作是用来维护单调队列的单调性,在队首出队的操作是用来维护单调队列的大小。单调队列常用于动态规划问题的优化。★构建单调递减队列的目的在于求最大值,求最大值时的操作为“大覆盖,小附加”★构建单调递增队列的目的在于求最小值,求最小值时的操作为“小覆盖,大附加”......

盟国 ← 带删并查集

【待删并查集知识点】带删并查集,确切地说是并查集的删除操作。由于并查集的的结构是一棵树,它的边有向且只指向父结点。如果直接删除相应的结点,会改变并查集的结构,产生错误。解决方法是把并查集的各个结点分别装进编号为 0~n-1 的不同的盒子里,删除某些结点时,就把这些结点从相应的盒子里拿出来,依次放到编号为n,n+1,...... 的盒子里。其中,n是并查集的结点数。在此设计下,带删并查集的find(

求团伙数量 ← 并查集

并查集是一种精巧且实用的数据结构,常用于处理不相交集合的合并问题。经典应用有Kruskal算法、LCA、连通子图等。

#数据结构
HDU 3038:多少错误答案 ← 带权并查集

【问题描述】题目来源:Problem - 3038题目译文:FF是个熊男孩,他总是恳求TT和他一起玩接下来的游戏。这是一个非常无聊的游戏:首先,TT写下一个整数序列。然后,FF从中选择一个连续的子序列(例如,从第3个整数到第5个整数的子序列),问TT他选择的子序列的和是多少?接下来,TT将回答FF的问题。然后,重复这个过程,直到FF算出整个整数序列的和。这真是一个非常非常无聊的游戏!TT根本不想和

    共 123 条
  • 1
  • 2
  • 3
  • 13
  • 请选择