leetcode题解日练--2016.8.26
###不给自己任何借口
今日题目:
1、Ransom Note ; tag:字符串
2、在旋转有序数组中查找最小元素II tag:数组|二分
今日摘录:
草在结它的种子,风在摇它的叶子。我们站着,不说话,就十分美好。
——顾城《门前》
383. Ransom Note | Difficulty: Easy
Given an arbitrary ransom note string and another string containing letters from all the magazines, write a function that will return true if the ransom note can be constructed from the magazines ; otherwise, it will return false.
Each letter in the magazine string can only be used once in your ransom note.
Note:
You may assume that both strings contain only lowercase letters.
canConstruct(“a”, “b”) -> false
canConstruct(“aa”, “ab”) -> false
canConstruct(“aa”, “aab”) -> true
tag:字符串
题意:判断一个ransom字符串否由magazines中的字符串组成,magazines中的每个字母只能用一次。
思路:用一个vector模拟hash_map就可以了,统计magazines中的字母出现次数,同时减去ransom中每个字母出现的次数,最后判断计数数组中的字母出现的次数有没有负数即可。
1、
class Solution {
public:bool canConstruct(string ransomNote, string magazine) {vector<int>cnt(26,0);for(int i=0;i<ransomNote.size();i++)cnt[ransomNote[i]-'a'+0]--;for(int i=0;i<magazine.size();i++)cnt[magazine[i]-'a'+0]++;for(int i=0;i<26;i++){if(cnt[i]<0) return false;}return true;}
};
结果:32ms
154. Find Minimum in Rotated Sorted Array II | Difficulty: Hard
Follow up for “Find Minimum in Rotated Sorted Array”:
What if duplicates are allowed?
Would this affect the run-time complexity? How and why?
Suppose a sorted array is rotated at some pivot unknown to you beforehand.
(i.e., 0 1 2 4 5 6 7 might become 4 5 6 7 0 1 2).
Find the minimum element.
The array may contain duplicates.
tag:数组|二分查找
题意:在一个旋转数组中查找最小元素
思路:不断通过和最右元素进行比较,主要思考清楚nums[mid]与nums[right]相等情况下如何处理。
class Solution {
public:int findMin(vector<int>& nums) {int left = 0,right=nums.size()-1;while(left<right){// if(nums[left]<nums[right]) return nums[left];int mid = left+(right-left)/2;if(nums[mid]>nums[right]) left = mid+1;else if (nums[mid] < nums[right]) right = mid;else right--;}return nums[left];}
};
结果:8ms
leetcode题解日练--2016.8.26相关推荐
- 算法与数据结构+LeetCode题解-Js版
LeetCode题解Js版 https://webbj97.github.io/leetCode-Js/ 题外话 LeetCode题解:传送门 前端笔记:传送门 项目背景 旨在提高自己对算法的理解,将 ...
- [原创内容] 自己编写的Windows7SP1Update离线更新安装汇总-完全开源2.0版[2016.08.26]
授人以鱼不如授人以渔. 这是一个开放源代码的批处理版的离线更新汇总包. 送给: 1.喜欢在原版上安装更新,又觉得在线更新检测起来太慢的朋友. 2.送给喜欢折腾系统封装的朋友. 简单介绍: 分为32位和 ...
- 900 多道 LeetCode 题解,这个 GitHub 项目值得 Star!
转自 | 码农有道 大家好,我是小 G. 周末风和日丽,适合刷 LeetCode 今天给你们推荐个 GitHub 项目,里面收集了 900 多道 LeetCode 题解,并包含中英文两个版本,适合大多 ...
- LeetCode集锦(八) - 第26题 Remove Duplicates From Sorted Array
LeetCode集锦(八) - 第26题 Remove Duplicates From Sorted Array 问题 Given a sorted array nums, remove the du ...
- PHP版Leetcode题解开始随缘更新
2019独角兽企业重金招聘Python工程师标准>>> PHP版Leetcode题解 我叫skys215,是一名bug工程师. 我接触编程的时间比较早,但是因为我数学不好加上比较懒, ...
- [LeetCode 题解]: Binary Tree Preorder Traversal
前言 [LeetCode 题解]系列传送门: http://www.cnblogs.com/double-win/category/573499.html 1.题目描述 Given a binary ...
- LeetCode 题解汇总
为什么80%的码农都做不了架构师?>>> LeetCode 题解汇总 转载于:https://my.oschina.net/michao/blog/801863
- leetcode题解【持续更新】
leetcode题解不断更新,以及nowcoder题解.一起加油! 完整请移步我的Github 转载于:https://juejin.im/post/5c8a73d8f265da2de80fa774
- 32位有符号整数_008. 字符串转换整数 (atoi) | Leetcode题解
点击上方"蓝色字体",选择"设为星标" 每天复习一道面试题,轻松拿大厂Offer~ 题目描述: 请你来实现一个 atoi 函数,使其能将字符串转换成整数. 首先 ...
最新文章
- 盖茨基金会:如何使用Python拯救生命
- (仿头条APP项目)7.首页标签页完善和微头条页面设计实现
- linux常用命令:sudo 命令
- python爬虫06 | 你的第一个爬虫,爬取当当网 Top 500 本五星好评书籍
- appium+java(五)微信小程序自动化测试实践
- jeewx-api.jar入门教程
- 将数据从MySql导入数据至SQL Server 2000
- 在组件中获取Application
- Louvain算法实现
- 修改Tomcat8的默认访问端口8080
- 用的iapp教程手册,iapp模块的使用教程
- 电脑出问题解决办法(WinXP)
- 连续8个季度增长超100% 阿里云成长为“亚洲巨象”
- Linux环境下ARM开发工具TrueSTUDIO初体验
- 批处理 Win10锁屏背景图片的提取
- ngx_shmtx_lock 分析
- 手把手学STM32(一)
- 【JAVA学习】java中怎么遍历HashMap(Iterator迭代器遍历)
- 很好用的程序员在线画图软件
- 《计算机是怎样跑起来的》优化使用VBScript语言编写的石头剪刀布游戏
热门文章
- Python连接并操作数据库的各种方法
- IT职业病预防之秃顶篇(二)
- mysql sqlstate 42000_mysql-SQLSTATE [42000]:语法错误或访问冲突:...
- (零二)Flask有手就行——动态路由
- Failed to read artifact descriptor for com.xx.cb:xxssaa-provider-api:jar:0.0.
- acwing 838. 堆排序 (手写一个堆)
- S8 U8 S16_LE S16_BE U16_LE U16_BE格式
- Unittest_skipe
- 【JZOJ5040】【NOI2017模拟4.2】押韵
- 三篇强化学习用于多智能体路径规划的论文