c/c++
AI大杂烩
算法
展开
-
剑指offer面试题6:从尾到头打印链表
题目见书《剑指offer》58页; 编程思路,链表数据用栈保存,利用栈先进后出的性质打印链表。 //面试题6:从尾到头打印链表 #include<iostream> #include<stack> #include<vector> using namespace std; //单项链表的结点定义 struct ListNode { int m_nValue...原创 2019-02-21 20:05:36 · 143 阅读 · 0 评论 -
剑指offer面试题3第二题:不修改数组找出重复的数字(加入理解的部分)
题目见书《剑指offer第二版》41页,纯属自己笔记,以待日后回看。 该题编程思想:基于二分查找的思想,统计不同范围内数组数字的数目是否超出范围。完整代码见下: #include <iostream> //#include<string.h> using namespace std; int countRange(const int* numbers, int lengt...原创 2019-02-19 10:00:28 · 181 阅读 · 0 评论 -
剑指offer面试题4:二维数组中的查找(比较直白简单)
题目见书《剑指offer》44页; 编程思路:将所输入数字与二维数组中的数字进行比较,如果相等则返回1,不相等则返回0,运用了遍历的思想,未用到指针。 // 二维数组中的查找 #include &amp;lt;iostream&amp;gt; using namespace std; bool find(int a[4][4], int number) { int i, j; bool found = fal...原创 2019-02-19 21:32:59 · 227 阅读 · 0 评论 -
剑指offer面试题5:替换空格(加入理解的部分)
题目见书《剑指offer》51页。 编程思路,与书一致;原本打算用一个指针的,但是随之而来的是时间复杂度变大。 //面试题5:替换空格 #include <iostream> #include<string.h> using namespace std; //length为字符串的总容量 void ReplaceBlank(char string[], int leng...原创 2019-02-20 09:39:11 · 136 阅读 · 0 评论 -
剑指offer面试题11:旋转数组的最小数字
题目见书《剑指offer》82页,emmm,中间的几道题略过。 该题主要是考察另外一个思路,遍历整个数组找到最小数字固然简单,但是时间复杂度并不是所期待的。 编程思路:二分查找,抓住旋转数组的特点。 //面试题11:旋转数组的最小数字 #include<iostream> using namespace std; int Min(int* numbers, int length)...原创 2019-03-04 21:07:33 · 114 阅读 · 0 评论 -
剑指0ffer面试题31:栈的压入,弹出序列
题目见书《剑指offer》168页; 刚开始看到这题的时候一头雾水,因为很久没有接触序列了。 思路:构建一个辅助栈。最重要的是判断栈顶元素与序列元素是否相同,不相同则向辅助栈压入元素。 由于程序摘抄的是书上的内容,本博客只是作为一个笔记,加入了自己的理解部分。 bool IsPopOrder(const int* pPush, const int* pPop, int nLength) { ...原创 2019-03-24 17:45:51 · 161 阅读 · 0 评论