C++
qq_39589945
这个作者很懒,什么都没留下…
展开
-
剑指offer总结--面试相关题:合并有序数组
题目:有两个排序的数组A1和A2,内存在A1的末尾有足够多的空余空间容纳A2.请实现一个函数,把A2中的所有数字插入到A1中,并且所有的数字都是有序的。实现1:返回新数组要点: 要返回一个新数组,这个数组在函数中需要用new的方式申请内存,这样的数组存储与堆中,在函数返回后并不会销毁,并且要在函数体外自行delete;如果数组在函数中使用普通变量的形式初始化,这样的数组存储在栈中,在函数返回后会销毁,导致函数体外访问异常;一句话就是不能返回局部变量的指针或者引用!#include <ios原创 2020-07-27 14:53:11 · 126 阅读 · 0 评论 -
不存在从 “std::string“ 到 “char *“ 的适当转换函数
#include <iostream>#include <cstring>using namespace std;void myPrint(string s){ cout << s << endl;}void myPrint2(char s[]){ cout << s << endl;}int main(){ system("cls"); char str[] = "hello w.原创 2020-07-26 18:57:37 · 8011 阅读 · 1 评论 -
剑指offer总结--面试题4:二维数组中的查找
题目:在一个二维数组中,每一行都按照从左到右的递增顺序排序,每一列都按照从上到下递增顺序排序。请完成一个函数,输入这样的一个二维数组和一个整数,判断数组是否包含了该整数。设待查找整数为num在二维数组中随便找一个数n;(1)若n=num,则停止寻找;(2)若n>num,则num位于n的左边或上边;(3)若n<num,则num位于n的右边或下边;思路...原创 2020-07-25 22:37:47 · 77 阅读 · 0 评论 -
剑指offer总结--面试题3:数组中的重复数字
题目1:找出数组中的重复数字(可修改数组内容)长度为n的数组里所有的数字都在0~n-1的范围内,请找出数组中的任意一个重复数字;算法思路判断数组下标 i 是否等于此下标上的元素number[i] ,如果相等则判断下一个下标i+1是否等于此下标上的元素number[i+1],不相等则判断number[i] 和 number[number[i]]是否相等,相等的话则为重复数字,不等的话交换它们两个的位置;例子:数组num = {2,3,1,0,2,5,3}(1)i=0; 0!=2;交换num[0原创 2020-07-25 01:35:08 · 93 阅读 · 0 评论 -
剑指offer总结--面试题1:赋值运算符函数
#题目:如下为类型CMyString的声明,请为该类型添加赋值运算符函数。class CMyString{public: CMyString(char* pData = nullptr); CMyString(const CMyString& str); ~CMyString(void);private: char* m_pData;};##注意点1.*连续赋值*:函数返回实例自身的引用(*this);2.*形参为常量引用*:const保.原创 2020-07-24 11:54:28 · 132 阅读 · 0 评论