上一页 1 2 3 4 5 6 7 ··· 9 下一页
摘要: 题目描述: 编写一个高效的算法来搜索 m x n 矩阵 matrix 中的一个目标值 target 。该矩阵具有以下特性: 1. 每行的元素从左到右升序排列。2. 每列的元素从上到下升序排列 思路: 根据 搜索的矩阵 matrix 特性,可以将 target 和矩阵的右上角元素 比较。 1. 要是相 阅读全文
posted @ 2021-04-01 15:04 谁在写西加加 阅读(47) 评论(0) 推荐(0) 编辑
摘要: 题目描述: 求一个整数 x 的平方根,返回整数,结果是小数 ,就向下取整。 思路: x的平方根 一定在 [1,x ] 区间内,使用二分查找,在 O(log x) 时间就可找到。 代码如下所示。 1 class Solution { 2 public: 3 //二分法 Time O(log x) 空间 阅读全文
posted @ 2021-04-01 13:03 谁在写西加加 阅读(32) 评论(0) 推荐(0) 编辑
摘要: 1 #include <bits/stdc++.h> 2 using namespace std; 3 4 class Solution { 5 public: 6 Node* copyRandomList(Node* head) 7 { 8 //第一步:遍历原链表生成新链表,同时用哈希表 memo 阅读全文
posted @ 2021-04-01 11:00 谁在写西加加 阅读(40) 评论(0) 推荐(0) 编辑
摘要: 题目描述: 给定一个无重复元素的整数数组,每次等概率随机返回 n ! 中的一个 。 代码如下: 1 #include <bits/stdc++.h> 2 using namespace std; 3 class Solution { 4 public: 5 Solution(vector<int>& 阅读全文
posted @ 2021-03-31 15:18 谁在写西加加 阅读(37) 评论(0) 推荐(0) 编辑
摘要: 题目描述: 给定 n 门课程(0,n-1) 和它们之间的先修关系,比如{(0,1),(1,2),(2,3),(2,0)} ,(0,1)表示 课程 1 是课程 0 的先修课程,即要修课程 0 必须 先修 课程 1,。根据给出的课程和其之间的先修关系,判断能否完成所有课程的学习。 将给定的课程和课程之间 阅读全文
posted @ 2021-03-31 12:30 谁在写西加加 阅读(99) 评论(0) 推荐(0) 编辑
摘要: 题目描述: 验证一颗给定的二叉树是否为 二叉搜索树; 思路: 对二叉树中序遍历,若遍历的序列是单调递增的,则是二叉搜索树;若遍历的每个节点都比前一个 节点大,则序列是单调递增;可以使用一个变量 long front 保存 前一个遍历的节点的值,front 在遍历之前 初始化为 LONG_MIN, 不 阅读全文
posted @ 2021-03-29 20:40 谁在写西加加 阅读(44) 评论(0) 推荐(0) 编辑
摘要: 题目描述: 在数组中的两个数字,如果前面一个数字大于后面的数字,则这两个数字组成一个逆序对。 输入一个数组,求出这个数组中的逆序对的总数。 示例 1: 输入: [7,5,6,4] 输出: 5 限制: 0 <= 数组长度 <= 50000 分析: 本题的暴力方法显然容易想到,但是会报超时,难度等级 h 阅读全文
posted @ 2020-12-09 20:21 谁在写西加加 阅读(91) 评论(0) 推荐(0) 编辑
摘要: 题目描述: 89. 格雷编码 难度 中等 动态规划: 按照动态规划或者说递归的思路去想,也就是解决了小问题,怎么解决大问题。 我们假设我们有了 n = 2 的解,然后考虑怎么得到 n = 3 的解。 n = 2 的解 00 - 0 10 - 2 11 - 3 01 - 1 如果再增加一位,无非是在最 阅读全文
posted @ 2020-12-06 17:19 谁在写西加加 阅读(72) 评论(0) 推荐(0) 编辑
摘要: 题目描述: 实现 int sqrt(int x) 函数。 计算并返回 x 的平方根,其中 x 是非负整数。 由于返回类型是整数,结果只保留整数的部分,小数部分将被舍去。 示例 2: 输入: 8 输出: 2 说明: 8 的平方根是 2.82842..., 由于返回类型是整数,小数部分将被舍去。 1 c 阅读全文
posted @ 2020-12-05 21:10 谁在写西加加 阅读(66) 评论(0) 推荐(0) 编辑
摘要: 题目描述: 给定一个字符串,逐个翻转字符串中的每个单词。 说明: 无空格字符构成一个 单词 。输入字符串可以在前面或者后面包含多余的空格,但是反转后的字符不能包括。如果两个单词间有多余的空格,将反转后单词间的空格减少到只含一个。 示例: 输入:" hello world! " 输出:"world! 阅读全文
posted @ 2020-12-05 20:17 谁在写西加加 阅读(234) 评论(0) 推荐(1) 编辑
上一页 1 2 3 4 5 6 7 ··· 9 下一页