C++
文章平均质量分 52
stone_322
这个作者很懒,什么都没留下…
展开
-
指针常量与常量指针
指针常量:指向不能改变的指针,只能指向变量。如: int * const ptr; 常量指针:指向常量的指针。你可以修改指针的值,但是不能(显式)修改常量的值。如: int const * ptr;原创 2021-04-21 15:07:42 · 58 阅读 · 0 评论 -
LeetCode704二分查找
转自代码随想录 思路 这道题目的前提是数组为有序数组,同时题目还强调数组中无重复元素,因为一旦有重复元素,使用二分查找法返回的元素下标可能不是唯一的,这些都是使用二分法的前提条件,当大家看到题目描述满足如上条件的时候,可要想一想是不是可以用二分法了。 二分查找涉及的很多的边界条件,逻辑比较简单,但就是写不好。例如到底是 while(left < right) 还是 while(left <= right),到底是right = middle呢,还是要right = middle - 1呢? 大家转载 2021-10-23 20:35:05 · 77 阅读 · 0 评论 -
常见排序算法代码实例
1.基本概念 时间复杂度:https://www.cnblogs.com/wonker/p/11236988.html 空间复杂度:https://www.cnblogs.com/wonker/p/11238418.html 稳定排序:假设序列中有两个值相等的元素,在排序后,如果这两个元素的相对前后位置没有发生改变,则是稳定排序。例如:int a = {11, 2, a, b,10};其中,a=b=3,排序后a = {2 ,a , b, 10, 11},而不是a = {2 ,b , a, 10, 11}。原创 2021-09-28 08:26:21 · 104 阅读 · 0 评论 -
C++ string.find问题
C++ string.find问题1 遇到的问题2 问题答案3 原因分析 1 遇到的问题 int main() { string s = "abcbb"; if (s.find('d') < 0) { cout << "未找到" << endl; } else { cout << "找到" << endl; } } 运行程序,输出 “找到”。 2 问题答案 程序改为: int main() { string s = "abcbb原创 2021-08-13 12:54:29 · 385 阅读 · 0 评论 -
C++11标准中的alignas
上篇文章中留下了两个问题,这里终于有了答案。 C++11标准中,对alignas的说明在这里,这里是中文版。 在文档中,并没有提到像网上其他资料说的那样,alignas的参数只能是8,16,32,64,128等,且最小是8。 经过上机测试,alignas的参数必须是 2 的幂,也就是说,最小可以是0。写入不是 2 的幂参数会报错。写入参数合法但是小于结构体自身对齐值时,alignas设置无效。 #include <iostream> using namespace std; #define f原创 2021-08-09 13:57:53 · 1200 阅读 · 1 评论