码迷,mamicode.com
首页 >  
搜索关键字:二分搜索    ( 480个结果
leetcode之二分搜索
当题目是求第k大或者第k小的数的时候,通常用二分搜索。 二分搜索模板: 求第k小个 while(l < r) { int mid = l + (r - l) / 2 ; int cnt = <= mid的数量; if(cnt < k) l = mid + 1 ; else r = mid ; } 求 ...
分类:其他好文   时间:2020-03-30 12:57:54    阅读次数:47
python code practice(二):KMP算法、二分搜索的实现、哈希表
1、替换空格 题目描述:请实现一个函数,将一个字符串中的每个空格替换成“%20”。例如,当字符串为We Are Happy.则经过替换之后的字符串为We%20Are%20Happy。 分析: 将长度为1的空格替换为长度为3的“%20”,字符串的长度变长。 如果允许我们开辟一个新的数组来存放替换空格后 ...
分类:编程语言   时间:2020-03-19 17:46:39    阅读次数:71
java-数组工具类
``` java.util.Arrays 1.public static int binartSearch(int [] a, int key) 1)使用二分搜索法来搜索指定的int型数组,以获得指定的值 2)要求数组是有序的,否则结果不一定 3)如果key在a数组中存在,就返回找到的第一个的下标,... ...
分类:编程语言   时间:2020-03-17 17:58:18    阅读次数:61
p43 将有序数组转化为二分搜索树 (leetcode 108)
一:解题思路 方法一:递归法 Time:O(n),Space:O(log(n)) 方法二:迭代法 Time:O(n),Space:O(n) 二:完整代码示例 (C++版和Java版) C++递归: class Solution { public: TreeNode* sortedArrayToBST ...
分类:编程语言   时间:2020-03-16 17:41:52    阅读次数:67
数据结构之映射Map
1、映射Map,存储键值数据对的数据结构(key,value),可以根据键key快速寻找到值Value,可以使用链表或者二分搜索树实现的。 首先定义一个接口,可以使用链表或者二分搜索树进行实现。 1 package com.map; 2 3 /** 4 * @ProjectName: dataCon ...
分类:其他好文   时间:2020-03-15 11:49:53    阅读次数:53
37-分治算法
1. 简单介绍 1.1 设计思想 分而治之 就是把一个复杂的问题分成两个或更多的相同或相似的子问题,再把子问题分成更小的子问题 ( 这些子问题互相独立且与原问题形式相同 )…… 直到最后子问题可以简单的直接求解, 原问题的解 即 子问题的解的合并 分治思路: 类似于数学归纳法,找到解决本问题的求解方 ...
分类:编程语言   时间:2020-03-13 22:14:53    阅读次数:93
p10 pow(x,n) 数值的n次方(leetcode 50)
一:解题思路 第一种方法:这个题目首先可以想到的用一个循环,将x连续乘以n次,如果n小于0,则返回其倒数,如果n大于0,则直接返回其结果。 第二种方法:要用到二分搜索的思想在里面。 二:完整代码示例 (C++版和Java版) 第一种方法C++ //Time:O(n),当n非常大的时候,效率不高 // ...
分类:其他好文   时间:2020-03-09 17:55:26    阅读次数:62
我理解的二分搜索
今天刷leetcode的时候做了好几道和二分搜索(BS)相关的题,发现主要的问题有两个:有的题不是很直观的就知道用BS;BS用起来corner case处理不好。下面我就来总结一下BS的用法和代码模版。 1. 什么时候可以用BS算法? 这里先引用下大牛Knuth的话——“Although the b ...
分类:其他好文   时间:2020-03-06 09:11:46    阅读次数:85
玩转数据结构:第7章 集合和映射
7-1 集合基础和基于二分搜索树的集合实现 07-Set-and-Map 集合 01-Set-Basics-and-BSTSet 文件IO操作,简单分词工具类 FileOperation import java.io.FileInputStream; import java.util.ArrayLi ...
分类:其他好文   时间:2020-02-25 17:52:28    阅读次数:52
01玩转数据结构_08_堆和优先队列
堆: 树这种结构 本身在计算机科学领域 占有很重要的地位,这种数据结构之所以占有重要的地位,不仅仅是因为二分搜索树这样的一种结构, 是树本身这种形状可以产生很多拓展,对于不同的问题 ,我们可以稍微改变 或者 限制树这种数据结构的性质,从而产生不同的数据结构,高效的解决不同的问题, 从节开始,将会有四 ...
分类:其他好文   时间:2020-02-24 12:39:08    阅读次数:56
480条   上一页 1 2 3 4 5 6 ... 48 下一页
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!