自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(13)
  • 收藏
  • 关注

原创 Repeated Substring Pattern

输入1个字符串,试确定其是否能由子串重复而成Input: "abab"Output: Truebool repeatedSubstringPattern(string s) { auto size = s.size(); int condition = 1; for (decltype(size)sub = 1;sub < size;++sub)

2017-03-31 20:50:26 168

原创 Detect Capital

输入一个字符串,以下3种情况返回true:1.全部字符串全为大写字母;2.只有第一个为大写字母3.全部为小写字母其余返回falsebool detectCapitalUse(string word) { auto it = word.begin(); auto it1 = word.end(); if (isupper(*it)) {

2017-03-30 10:38:46 197

原创 Reverse String II

给出1个字符串和k,每2k个反转前面k个元素;如果最后剩下/只有2k~k个元素依然反转前面k个元素;剩下/只有小于K个元素全部反转Input: s = "abcdefg", k = 2Output: "bacdfeg"如果使用迭代器的话,一旦超出范围就会报错,且无法用if进行判断。参考discuss用下标,只有在循环体内部对字符串进行访问,循环判断只用size_t的变量进行比

2017-03-29 20:35:59 266

原创 Find All Duplicates in an Array

输入1个数组内容在1~n之间

2017-03-28 20:35:30 155

原创 插入排序

从第2个数据开始依次与位于其前面的数据进行比较,当该数据小于其前面的某个元素时停止此次迭代,转到下一个元素进行比较。在用该数据比较的过程中,进行交换只是位于前面的数据,只有当本次迭代结束的时候才会将该数据重新放入数组。int main(int argc, char** argv){ vectornums = { 3,2,3,1,2,4,5,5,6 }; for (int i = 1;

2017-03-28 19:42:45 137

原创 Teemo Attacking

输入一个存储攻击时间的数组和攻击效果持续时间,要求输出攻击总的持续时间。注意不计算重复时间。int findPoisonedDuration(vector& timeSeries, int duration) { int time=0; decltype(timeSeries.size()) size=timeSeries.size(); if(

2017-03-28 19:37:20 235

原创 Third Maximum Number

输入1个数组,输出第3大的元素,如果不存在输出最大值,重复出现的元素只计数1次。Input: [3, 2, 1]Output: 1参考discuss,关联容器set会自动按键值大小排好顺序,且不接收重复元素set top3;for (int num : nums) { top3.insert(num); if (top3.size() > 3)

2017-03-28 09:30:43 176

原创 Find All Numbers Disappeared in an Array

输入一个个数为n的数组,要求在不用额外空间的条件下找出在1~n中没有出现的元素。Input:[4,3,2,7,8,2,3,1]Output:[5,6]参考discuss,由于数组下标和数组内容只相差1,通过将数组内容变成负数的方法,则未出现元素作为下标对应的内容仍为正数int len = nums.size();for(int i=0; i<len; i++) {

2017-03-27 21:13:38 184

原创 Max Consecutive Ones

输入一串二进制代码,输出连续1个数最多的大小Input: [1,1,0,1,1,1]Output: 3注意在判断是否要更新最大值的时候,一定要将计数归0int longest=0,i=0;for (auto ix = nums.begin(); ix != nums.end(); ++ix) if(*ix==1) ++i; else {

2017-03-27 20:29:54 247

原创 K-diff Pairs in an Array

输入1个数组和差值k,要求输出差为k的整数对,且不能重复。例如Input: [3, 1, 4, 1, 5], k = 2Output: 2如果使用顺序容器,难以处理不能重复的要求。所以建议使用关联容器map和set,插入时不用考虑重复的问题。参考discuss的答案if (k < 0) return 0; unordered_set starters; unord

2017-03-27 16:41:48 199

原创 有序关联容器

按关键字有序保存元素#include //关联数组map:保存关键字-值对应//multimap:关键字可重复出现的map初始化//建议使用make_pair构建mapmp = {{"aa", 1}, {"aaa", 2}, {"22", 33}};//必须用{key, value}包含起来map容器元素pairp("aa", 1);pairp={

2017-03-26 12:37:11 181

原创 顺序容器(下)

string//初始化string str("内容");string string1 = "then";string s2(string1);cin >> string1;//不输出开头的空白,第二个空格结束输入getline(cin, string1);//每次输入一整行,用回车结束输入str = "123" + string1;//唯一允许的加法形式string1[2]

2017-03-25 20:21:58 171

原创 顺序容器(上)

#include //c++11 数组类型#include //双向链表,插入删除速度快,不支持随机访问 #include //c++11 单向链表,单向访问,插入删除速度快,不支持随机访问,没有size操作 #include //双端队列,支持快速随机访问 #include //插入删除耗时

2017-03-25 19:42:28 163

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除