算法专题|并查集
并查集(Union-find Data Structure)是一种树型的数据结构。它的特点是由子结点找到父亲结点,用于处理一些不交集(Disjoint Sets)的合并及查询问题。
……记录所学所思所想,专注于Go语言、软件架构
并查集(Union-find Data Structure)是一种树型的数据结构。它的特点是由子结点找到父亲结点,用于处理一些不交集(Disjoint Sets)的合并及查询问题。
……贪心算法没有固定的模板,基本思路是找到问题的一个切入点,虽然证明这个解法是最优的。
思路
这题很简单,数据只有4个数,组合就3种,不过为了求最小和,贪心的思路就是组成的数值最高位都尽量小,因此把四个数排序,1和4组成一个数,2和3组成一个数,这样就能得到最小的和。
……思路
最基础的单调栈用法。
代码
|
|
思路
……双指针是一种简单而又灵活的技巧和思想,单独使用可以轻松解决一些特定问题,和其他算法结合也能发挥多样的用处。
双指针顾名思义,就是同时使用两个指针,在序列、链表结构上指向的是位置,在树、图结构中指向的是节点,通过或同向移动,或相向移动来维护、统计信息。
……二分查找 (Binary Search) 也称折半查找,它是一种效率较高的查找方法。但是,折半查找要求线性表必须采用顺序存储结构,而且表中元素按关键字有序排列。
总结有以下特征和解题步骤:
func(mid)
基础模板
……回溯 (backtracking) 是暴力搜索的方法之一。
总结有以下特征和解题步骤:
|
|
题解
……动态规划(Dynamic Programming,DP)是运筹学的一个分支,是求解决策过程。总结有以下特征和解题步骤:
描述
……