刷题
wuxiaoxiao2021
这个作者很懒,什么都没留下…
展开
-
数组中重复的数字
在一个长度为n的数组里的所有数字都在0到n-1的范围内。 数组中某些数字是重复的,但不知道有几个数字是重复的。也不知道每个数字重复几次。请找出数组中任意一个重复的数字。例如,如果输入长度为7的数组{2,3,1,0,2,5,3},那么对应的输出是第一个重复的数字2。输出:true 2时间复杂度O(n) + 1空间复杂度O(1)因为空间复杂度要求O(1),不能使用额外的数组空间...原创 2018-12-27 16:01:51 · 207 阅读 · 0 评论 -
二维数组中的查找
问题描述在一个二维数组中,每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的顺序排序。请完成一个函数,输入这样的一个二维数组和一个整数,判断数组中是否含有该整数。Consider the following matrix:{{1, 4, 7, 11, 15},{2, 5, 8, 12, 19},{3, 6, 9, 16, 22},{10, 13, 1...原创 2018-12-27 16:54:58 · 177 阅读 · 0 评论 -
替换空格,思想从后往前
问题描述将一个字符串中的空格替换成 “%20”。Input:"We Are Happy"Output:"We%20Are%20Happy"解题思路在原字符串地址空间进行操作,length(新)>length(旧),来节省空间利用char*字符串的==’\0’==来完成遍历,求取新字符串长度令 P1 指向字符串原来的原创 2018-12-27 20:53:29 · 610 阅读 · 0 评论 -
从尾到头打印链表
题目描述输入链表的第一个节点,从尾到头反过来打印出每个结点的值。解题思路新建简单的链表用以测试会遍历正确顺序的链表数据不同的方法实现:利用栈#include <iostream>#include <vector>#include <stack>#include <string原创 2018-12-28 09:12:42 · 84 阅读 · 0 评论 -
剑指offer--1.实现赋值运算符函数
问题描述如下为类型CMyString的声明,请为该类型添加赋值运算符函数class CMyString{private: char* m_pData;public: CMyString(char* pData = nullptr); CMyString(const CMyString& str); ~CMyString();};解题思路经典解法,初级程序员返回...原创 2018-12-28 20:20:43 · 680 阅读 · 0 评论 -
字符串操作-分解字符串并补0
题目描述按要求分解字符串:输入两个数M,NM:输入的M串字符串N:输出的每串字符串的位数,不够补0。eginput:2 8 abc 123456789out:abc00000 12345678 90000000解题C++字符串常用函数:string substr (size_t pos = 0, size_t len = npos) const;note:第...原创 2019-01-03 20:45:35 · 3016 阅读 · 0 评论 -
C++实现十进制转换为任意进制
十进制数在C++中用什么表示? 一个十进制数,在程序中用什么方式转换为其他进制,和在数学中的思路一样吗?? 输出的结果用什么表示比较方便? 下面的程序中digit思考为什么要用静态变量?#include <iostream>#include <vector>#include <stack>#include <string>using...原创 2018-08-11 20:20:28 · 14561 阅读 · 11 评论 -
memcpy() memmove()函数的区别和实现
原型void * memmove ( void * destination, const void * source, size_t num );void * memcpy ( void * destination, const void * source, size_t num );功能memcpy与memmove的目的都是将N个字节的源内存地址的内容拷贝到目标内存地址中。但当源内存和...原创 2019-01-04 19:23:59 · 202 阅读 · 0 评论