面经
mm_hh
这个作者很懒,什么都没留下…
展开
-
元素出栈、入栈顺序的合法性
元素出栈、入栈顺序的合法性。如:入栈的序列(1,2,3,4,5),出栈序列为(4,5,3,2,1),则合法。入栈的序列(1,2,3,4,5),出栈序列为(4,5,2,3,1),则不合法。这道题目考察的就是栈的先进后出(FILO),当第一个值压入栈后,它就会比它后压入的值晚出栈,好比1.2.3.4.5是入栈序列,4.5.3.2.1是出栈序列,为什么说他是正确的呢?因为当4出栈时,栈内已经压入1.2.3原创 2017-07-23 20:46:10 · 679 阅读 · 0 评论 -
将N个字符的数组,循环右移K位。时间复杂度O(N)。
将N个字符的数组,循环右移K位。时间复杂度O(N) eg:str[]=”abcde123”,右移3位 1、旋转abcde->edcba 2、旋转123->321 3、整体旋转edcba321->123abcde代码块实现void Reverse(char* str, int left,int right){ while (left < right) {原创 2017-08-11 09:51:20 · 1724 阅读 · 0 评论 -
字符串替换 eg: str1="123%s456%s" str2={'a','b','c','d'}(将str1中的%s替换成str2中的字符)替换结果返回为:123a456bcd
//字符串替换 //eg: str1=”123%s456%s” str2={‘a’,’b’,’c’,’d’}(将str1中的%s替换成str2中的字符)替换结果返回为:123a456bcd代码块#pragma once#include<iostream>using namespace std;#include<assert.h>#include<string>void ReplaceC原创 2017-08-11 18:43:20 · 1057 阅读 · 0 评论 -
日常笔记整理
1、#pragma的作用是什么:设置编译器的2、p++ 是先自增p(++p),在进行解引用,他等价于 (p++) :因为后缀++和–操作符的优先级比前缀一目操作的优先级高, 若要自增p所指向的值:(*p)++;如果副作用的顺序无关紧要,也可以使用++*p;3、int**a[3][4] 该式表示的是指向指针的指针数组,每个元素存放的是二级指针,每个指针在32位执行系统下占4个字节的内原创 2017-08-13 21:00:47 · 398 阅读 · 0 评论