- 博客(16)
- 收藏
- 关注
原创 leetcode刷题思路总结_盛最多水的容器
leetcode刷题思路总结_盛最多水的容器题目描述:解题思路:核心思想其实根本不是什么双指针,而是贪心算法。最优解是容器 边缘位于最两端,且最高 。 当然,完美总是不存在,不能满足这样的情况下,才考虑收缩容器宽度和高度,由于高度的无序和未知,所以考虑收缩宽度。在收缩宽度时,贪心选择抛弃短的,虽然不能保证这样操作后是增加还是减少 。但是能保证你比丢了个长的差吧。一直收缩,选取最短的值就好了。题解...
2020-06-12 23:25:38
311
原创 客户端性能测试工具-Wetest、cude PC
新人 最近在学习客户端性能测试 遂体验客户端性能测试工具 发现WeTest是真的好用,现在分享使用教程1.手机端下载wetset助手https://wetest.qq.com/product/cube/https://wetest.qq.com/product/cube/2.电脑端下载cube pc 助手https://wetest.qq.com/product/cube/ps:cube...
2019-05-09 17:17:52
6177
1
转载 网络的“心跳”
其实,网络的心跳机制非常的简单 所谓“心跳”就是定时发送一个自定义的结构体(心跳包或心跳帧),让对方知道自己“在线”。 以确保链接的有效性。换言之,就是你有心跳,就知道你小子还在活着。所谓的心跳包就是客户端定时发送简单的信息给服务器端告诉它我还在而已。代码就是每隔几分钟发送一个固定信息给服务端,服务端收到后回复一个固定信息如果服务端几分钟内没有收到客户端信息则视客户端断开。比如有些通信软件长时间不...
2019-04-29 14:47:35
2656
原创 leetcode刷题思路总结_对称的二叉树
class Solution {public: bool isSymmetric(TreeNode* root) { if(!root) return true; return dfs(root->left,root->right); } bool dfs(TreeNode* ...
2019-03-11 13:08:37
226
原创 leetcode刷题思路总结_合并两个排序的链表
解题 思路 采用非递归思想1.新建立一个虚拟头结点以及头结点的下一个指针cur2.每次比较l1 与l2的大小,cur赋给较小的值结点后3.最如果有一条链表空了,另一条不空 ,则直接将cur’设为链表剩余头部4.最后返回虚拟头结点的nextclass Solution {public: ListNode* mergeTwoLists(ListNode* l1, ListNode...
2019-03-10 12:04:19
144
原创 leetcode刷题思路总结_增减字符串匹配
解题思路1 设置min最小值0,max最大值N遇到D(down) 就玩最大值N开始填 N–遇到I(increase) 就玩最小值0开始填 0++class Solution {public: vector<int> diStringMatch(string S) { int N=S.length(); ve...
2019-03-03 13:41:34
271
原创 leetcode刷题思路总结_按奇偶排序数组
解题思路博主编程萌新 目前采用的方法比较笨1.开同大小数组res2.设置o=0 j=1 分别表示奇位置指针 偶位置指针3.遍历数组为奇数 赋值res[j] j+=2;为偶数赋值res[o] o+=2;4.返回res;public: vector<int> sortArrayByParityII(vector<int>& A) { ...
2019-03-02 19:46:33
335
原创 leetcode刷题思路总结_有序数组的平方
解题思路这里采用了比较笨的方法直接将平方存储在a中 对a进行sort排序即可class Solution {public: vector<int> sortedSquares(vector<int>& A) { for(int i=0;i<A.size();i++) { A[i]=...
2019-03-02 11:50:00
221
原创 leetcode刷题思路总结_两数之和
解题思路1.先将目标数组存入map映射,元素值与下标一一对应2.遍历数组元素,判断target—nums【i】 是否存在(map里count())3放回能够存在的下标class Solution {public: vector<int> twoSum(vector<int>& nums, int target) { std::vector&...
2019-03-02 11:46:49
132
原创 leetcode刷题思路总结_宝石与石头
思路总结:我用的是比较笨的方法1.将字符串J每个字符存入set集合中2.将s的每个字符在set中进行find()操作既可以知道结果`class Solution {public:int numJewelsInStones(string J, string S) {int sum=0;std::set<char> myset; for(int i=0;i<...
2019-03-02 00:24:32
276
原创 剑指offer_刷题思路总结_单链表的倒数第k个节点
解题思路:由于单链表只能从前往后遍历 因此不可能倒着找第k个节点所以: 1.遍历链表求出,链表长度n;2.倒数k=正数第n-k个节点class Solution {public: ListNode* FindKthToTail(ListNode* pListHead, unsigned int k) { int n=0; for(auto p=pList...
2019-03-01 22:26:34
173
原创 c/c++最小公倍数-最大公约数
输入n和m,求n和m的最小公倍数-最大公约数什么是辗转相除法辗转相除法辗转相除法:辗转相除法是求两个自然数的最大公约数的一种方法,也叫欧几里德算法。例如,求(319,377 ):∵ 319÷377=0(余319)∴(377,319);∵ 377÷319=1(余58)∴(319,58);∵ 319÷58=5(余29)∴ (58,29);∵ 58÷29=2(余0)∴ (58,2...
2019-03-01 16:10:04
1485
原创 leetcode刷题思路总结_intersection two linked lists
解题思路:利用 STL的set集合 ——set集合元素集合唯一,不存在重复元素。1.将A链表元素地址依次存入自定义set集合。2.遍历B链表与set集合进行匹配,放回第一个匹配到的结点`class Solution {public:std::set<ListNode*> myset;ListNode* FindFirstCommonNode( ListNode* head...
2019-02-25 14:40:08
205
原创 剑指offer_刷题思路总结_二维数组中的查找
思路总结 : 其实就是一句话以右上角顶点二分 = 则正确&amp;gt; 比顶点大 那么删除所在行查找&amp;lt; 比顶点小 删除所在列查找`class Solution {public:bool Find(int target, vector&amp;lt;vector &amp;gt; array) { if(array.empty()||array[0].empty()) re.
2019-02-15 23:50:03
206
原创 剑指offer_刷题思路总结_数组中重复的数字
数组中重复的数字思路总结 :最直接肯定是如果我们能都将数组排序 那么只要从头到尾遍历一次即可 看相邻元素是否相等 然而最快的排序算法时间复杂度都是 nlogn的。这里有一种时间复杂度为o(n, 空间复杂度为o(1)的算法class Solution {public: int duplicateInArray(vector&lt;int&gt;&amp; nums) { ...
2019-02-10 11:39:09
268
原创 剑指offer _刷题思路总结_从尾到头打印链表
@剑指offer 刷题思路总结_题目三思路整理 :1. 遍历一遍链表存入vector中2.利用vector (v.rbegin(),v.rend()) 就可以实现逆序输出了当然也可以用模拟栈或者递归来实现 这里算是比较偷懒了代码实现class Solution {public: vector&amp;amp;amp;lt;int&amp;amp;amp;gt; printListFromTailToHead(ListNo...
2019-02-09 21:48:08
371
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人