码迷,mamicode.com
首页 >  
搜索关键字:二分搜索    ( 480个结果
二分查找
二分查找 思想:二分搜索是一种在有序数组中查找某一特定元素的搜索算法。搜索过程从数组的中间元素开始,如果中间元素正好是要查找的元素,则搜索过程结束;如果某一特定元素大于或者小于中间元素,则在数组大于或小于中间元素的那一半中查找,而且跟开始一样从中间元素开始比较。如果在某一步骤数组为空,则代表找不到。 ...
分类:其他好文   时间:2020-07-05 20:59:19    阅读次数:47
LeetCode每日一题:240、搜索二维矩阵II
题目描述: 编写一个高效的算法来搜索 m x n矩阵matrix中的一个目标值target。该矩阵具有以下特性: 每行的元素从左到右升序排列。每列的元素从上到下升序排列。 方法一:暴力法 没啥说的,直接搜。时间复杂度o(mn) 面试0分 方法二:二分搜索 利用每一行的升序特性,对每一行进行二分搜索。 ...
分类:其他好文   时间:2020-07-02 16:10:07    阅读次数:61
LeetCode69. x 的平方根
这题是要用二分寻找一个数的平方根的整数部分。 当然顺序搜索也是可以的,但是由于搜索范围1 ~ sqrt(x)是有序的,所以显然可以用二分搜索。 这题由于是返回整数部分,所以二分的判断稍微要多写几行,如果一个数pow(mid, 2) < x, 但pow(mid + 1, 2) > x,这种情况下是返回 ...
分类:其他好文   时间:2020-07-02 16:04:52    阅读次数:46
数据结构-二分搜索树(C语言实现)
导入头文件 编写代码过程中,涉及动态内存分配等常用的函数,需要引入如下头文件 #include<stdio.h> #include<stdlib.h> 结构体定义 // 定义二分搜索树结构体 typedef struct Node { int data; struct Node * left; st ...
分类:编程语言   时间:2020-06-26 18:43:11    阅读次数:77
[每日一题2020.06.17] leetcode周赛T3 5438 制作m束花所需的最少天数 二分搜索
题目链接 这题我开始一直在想如何在数组上dp操作搜索区间, 很蠢, 实际上用二分查找的方法可以很快的解决 首先我们通过一个函数判断第x天是否符合题意, 如果x天可以做出m束花, 那么大于m的天数必然可以. 从这里便可以看出其符合二分搜索的特性 : 答案在一个固定区间内; 可能查找一个符合条件的值不是 ...
分类:其他好文   时间:2020-06-14 16:45:45    阅读次数:58
二分搜索-1904. 放小球
2020-06-13 18:04:45 问题描述: n个桶中小球的个数已知,可以操作k次(每次从桶中取出一个球,或者添加一个球),每个桶有规定的最大容量W[i]。求操作后两相邻桶之间的最大差值的平方的最小值。 样例 样例 1: 输入: 5 6 [1,2,3,4,5] [15,15,15,15,15] ...
分类:其他好文   时间:2020-06-13 19:04:51    阅读次数:55
06-二分搜索树 BST
1、树的简介 树结构本身是一种天然的组织结构 计算机文件夹 家谱 图书馆图书分类 公司职工 将数据使用树结构存储后,出奇的高效 2、树的分类 二分搜索树(Binary Search Tree) 平衡二叉树 AVL 红黑树 堆 并查集 线段树 Trie (字典树,前缀树) 3、二叉树简介 一个元素具有 ...
分类:其他好文   时间:2020-06-11 19:47:18    阅读次数:55
【数据结构】AVL
什么是AVL树? 首先,回忆一下二分搜索树的问题,在二分搜索树中有一个很严重的问题,什么问题呢? 在二分搜索树中如果顺序添加元素会转化为链表,这就会大大降低二分搜索树的效率。比如说1、2、3、4、5、6。 二分搜索树如图: 那么如何解决这个问题? 需要在二分搜索树的基础上添加一定的机制,使得二分搜索 ...
分类:其他好文   时间:2020-05-17 13:29:42    阅读次数:46
【数据结构】二分搜索树
什么是树? 在现实生活中有很多能体现出树的逻辑的例子。 例如:企业里的职位关系,也是一颗树。 再例如:操作系统的文件夹目录,也是一颗树。 那么以上的这些例子有什么共同点呢?为什么称它们为"树"呢? 因为它们都像自然界中的树一样,从同一个"根"衍生出许多的"枝干",再从每一个"枝干"衍生出许多更小的" ...
分类:其他好文   时间:2020-05-13 17:12:08    阅读次数:62
双指针总结
1.双指针 双指针解决数组,字符串,二分搜索,链表翻转、判断是否有环、寻找链表向后数第i个元素、链表中间的元素。 1.1有序数组两数之和 left = 0,right = arr.len 1 若arr[left]+arr[right] sum,right ;否则left++; 1.2最小子串(双指针 ...
分类:其他好文   时间:2020-04-22 22:52:53    阅读次数:81
480条   上一页 1 2 3 4 ... 48 下一页
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!