类、结构体、指针和引用
类、结构体、指针和引用
张学恒
这个作者很懒,什么都没留下…
展开
-
32. 调整数组顺序使奇数位于偶数前面——类似快排思想(DAY 30)
文章目录原题题目代码实现原题题目代码实现class Solution {public: void reOrderArray(vector<int> &array) { int i=0,j=array.size()-1; while(i<j) { while(i<j&& array[i]%2) i++; while( i原创 2022-04-09 16:06:01 · 77 阅读 · 0 评论 -
68. 0到n-1中缺失的数字(二分方法的集合)(erase函数)(DAY 30)
文章目录原题题目代码实现解题思路:原题题目代码实现class Solution {public: int getMissingNumber(vector<int>& nums) { unordered_set<int> S; for(int i=0;i<=nums.size();i++) S.insert(i); for(auto x : nums) S.erase(x);原创 2022-04-09 15:29:57 · 162 阅读 · 0 评论 -
67. 数字在排序数组中出现的次数(auto : 范围遍历)(DAY 30)
文章目录原题题目代码实现原题题目考察对vector的遍历是否熟悉,遍历一下数组,依次判断一下k是否等于数组中的元素就行了。我们采用范围遍历。for(auto a : nums)范围遍历要比我们用循环变量i来遍历,效率要高一点。所以尽量用范围遍历。代码实现class Solution {public: int getNumberOfK(vector<int>& nums , int k) { int cnt=0; for(auto原创 2022-04-09 15:10:15 · 142 阅读 · 0 评论 -
数组越界(DAY 30)
文章目录1:引例1:2:数组越界原因:错误2:总结:1:引例1:推荐文章1推荐文章22:数组越界原因:可以看到,我们reverse的a+6 超出了定义的数组的长度5 ,就出现了一个相对来说很大的数字,32767 这是多少? 2的15次方等于32768 32767就等于2^15 -1 为什么减去1? 在计算机组成原理中,二进制数的范围就是-2的15次方到 +2的十五次方-1。因为中间有一个0。从这里我们又可以知道,为什么是15次方? 看来在该编译器中,数组的产长度是 4 个4位原创 2022-04-09 15:06:29 · 841 阅读 · 0 评论 -
1.8 STL、位运算、常用库函数lower_bound(DAY 30)
文章目录1:lower_bound 函数 二分(1)定义:找到这个区间当中第一个大于等于x的位置的值(2) 返回4试试(3)返回7就越界了,和我上一篇文章实验的错误一样(4)原因分析:(5)通过代码可以看出来,返回的值是在数组的外面2:upper_bound(1)a也可以是vectorlower_bound upper_bound就是二分的函数所有容器除了队列之外都能遍历1:lower_bound 函数 二分返回的是一个迭代器,在数组里面就是返回一个指针。(1)定义:找到这个区间当中第一个大于等于原创 2022-04-09 12:42:15 · 191 阅读 · 0 评论 -
sort的用法2:排结构体(DAY 30)
文章目录1:sort排结构体2:在结构体里面重载小于号看作是当前元素和t比较的时候。运算符重载一般都是大于和小于,很少用等于3:传参1:sort排结构体#include<iostream>#include<algorithm>#include<vector>#include<ctime>using namespace std;struct Rec { int x,y; }a[5];bool cmp原创 2022-04-09 10:05:27 · 777 阅读 · 0 评论 -
1.8 STL、位运算、常用库函数(DAY 29)
主要记录了vector容器中的一些简单应用。原创 2022-04-08 15:39:11 · 571 阅读 · 0 评论 -
29. 删除链表中重复的节点(DAY 28)(困难难度的题)(DAY 28)
文章目录原题题目代码实现原题题目代码实现/** * Definition for singly-linked list. * struct ListNode { * int val; * ListNode *next; * ListNode(int x) : val(x), next(NULL) {} * }; */class Solution {public: ListNode* deleteDuplication(ListNode* head)原创 2022-04-07 21:57:33 · 448 阅读 · 0 评论 -
66. 两个链表的第一个公共结点(DAY 28)
文章目录原题题目代码实现原题题目代码实现/** * Definition for singly-linked list. * struct ListNode { * int val; * ListNode *next; * ListNode(int x) : val(x), next(NULL) {} * }; */class Solution {public: ListNode *findFirstCommonNode(ListNode *head原创 2022-04-07 17:41:08 · 640 阅读 · 0 评论 -
35. 反转链表y总室友hulu面试题(DAY 27)
hulu葫芦面试题原创 2022-04-06 22:09:45 · 366 阅读 · 0 评论 -
87. 把字符串转换成整数(DAY 27)
文章目录原题题目代码实现原题题目代码实现class Solution {public: int strToInt(string str) { int k=0; while( k < str.size()&& str[k] == ' ') k++; long long res=0; //bool is_minus = false; int minus=1;原创 2022-04-06 20:43:54 · 144 阅读 · 0 评论 -
78. 左旋转字符串(DAY 27)
左旋(doge) 健身必备原创 2022-04-06 20:05:44 · 364 阅读 · 0 评论 -
36. 合并两个排序的链表(DAY 27)
文章目录原题题目代码实现原题题目先理解再做题,代码就是把思想给写出来。可以先写个大概,然后自己再debug。代码实现/** * Definition for singly-linked list. * struct ListNode { * int val; * ListNode *next; * ListNode(int x) : val(x), next(NULL) {} * }; */class Solution {public: ListN原创 2022-04-06 18:41:34 · 320 阅读 · 0 评论 -
28. 在O(1)时间删除链表结点(DAY 26)
让该结点等于下下一个结点,即把下一个结点跳过,俗称狸猫换太子,或者直接给结构体赋值。原创 2022-04-05 22:45:55 · 722 阅读 · 0 评论 -
84. 求1+2+…+n (DAY 26)
剑指offer里面出过原创 2022-04-05 22:30:46 · 228 阅读 · 0 评论 -
21. 斐波那契数列(DAY 26)
Leetcode风格类型的题目原创 2022-04-05 22:18:09 · 181 阅读 · 0 评论 -
16. 替换空格(DAY 26)
文章目录原题题目代码实现原题题目代码实现class Solution {public: string replaceSpaces(string &str) { string res; for(auto c:str) if(c==' ')res+="%20"; else res+=c; return res; }};.原创 2022-04-05 22:16:00 · 214 阅读 · 0 评论 -
类、结构体(DAY 26)
对类 和结构体的初步认识原创 2022-04-05 10:52:42 · 402 阅读 · 1 评论