方法1: 哈希表 时间复杂度:O(m+n) 空间复杂度:O(m)或O(n) class ListNode: def __init__(self, x): self.val = x self.next = None class Solution: def getIntersectionNode(sel ...
分类:
其他好文 时间:
2020-06-25 15:46:32
阅读次数:
40
一、二叉树概念 (1)定义 二叉树是n(n>=0)个结点的有限集合,该集合或者为空集(称为空二叉树),或者由一个根结点和两棵互不相交的、分别称为根结点 的左子树和右子树组成 (2)性质 1)在二叉树的第i层上最多有2i-1 个节点 。(i>=1) 2)二叉树中如果深度为k,那么最多有2k-1个节点。 ...
分类:
编程语言 时间:
2020-06-24 14:29:19
阅读次数:
55
题目 给定一具有N个顶点(从1到N编号)的凸多边形,每个顶点的权均已知。问如何把这个凸多边形划分成N-2个互不相交的三角形,使得这些三角形顶点的权的乘积之和最小? 输入 第一行 顶点数N(N<50)。 第二行 N个顶点(从1到N)的权值,权值为小于32768的整数。 输出 第一行为各三角形顶点的权的 ...
分类:
其他好文 时间:
2020-06-23 21:10:18
阅读次数:
46
题目描述 给定一具有N个顶点(从1到N编号)的凸多边形,每个顶点的权均已知。问如何把这个凸多边形划分成N-2个互不相交的三角形,使得这些三角形顶点的权的乘积之和最小? 输入格式 第一行 顶点数N(N<50)。 第二行 N个顶点(从1到N)的权值,权值为小于32768的整数。 输出格式 第一行为各三角 ...
分类:
其他好文 时间:
2020-06-23 17:24:44
阅读次数:
62
【链表相交】:
给定两个(单向)链表,判定它们是否相交并返回交点。请注意相交的定义基于节点的引用,而不是基于节点的值。换句话说,
如果一个链表的第k个节点与另一个链表的第j个节点是同一节点(引用完全相同),则这两个链表相交。 ...
分类:
编程语言 时间:
2020-06-23 13:15:12
阅读次数:
51
题意:有一个矩形,有$k$个警报器,警报器所在半径$r$内不能走,问是否能从左上角走到右下角. 题解:用并查集将所有相交的圆合并,那么不能走的情况如下图所示 所以最后查询判断一下即可. 代码: #include <iostream> #include <cstdio> #include <cstri ...
分类:
其他好文 时间:
2020-06-22 15:08:03
阅读次数:
74
走到尽头见不到你,于是走过你来时的路,等到相遇时才发现,你也走过我来时的路。 ...
分类:
其他好文 时间:
2020-06-21 23:33:18
阅读次数:
52
本文参考了【算法】并查集(Disjoint Set)和并查集详解 并查集原理 并查集是一种用于处理不相交集合之间合并问题的数据结构,例如求连通子图、判断是否存在环、求最小生成树等。 以判断图中是否有环为例,下图是一个无向图。 graph TB; A B A C A D C D C E 首先把每一个顶 ...
分类:
其他好文 时间:
2020-06-17 20:10:17
阅读次数:
53
练习 1: 编写 C++程序完成以下功能: 1)定义一个 Point 类,其属性包括点的坐标,提供计算两点之间距离的方法; 2)定义一个 圆形 类,其属性包括圆心和半径; 3)创建两个圆形对象,提示用户输入圆心坐标和半径,判断两个圆是否相交,并输出结果。 Point.h #pragma once c ...
分类:
编程语言 时间:
2020-06-17 01:17:18
阅读次数:
61
1.单链表操作 class ListNode: def __init__(self,data): #data为数据项,next指向下一节点 self.data = data self.next = None class LinkList: def __init__(self): #初始化head指针 ...
分类:
其他好文 时间:
2020-06-15 20:57:48
阅读次数:
51