OJ练习
数据结构与算法/编程语言练习
yuan_mes
这个作者很懒,什么都没留下…
展开
-
【剑指Offer第四题】重建二叉树
题目描述输入某二叉树的前序遍历和中序遍历的结果,请重建出该二叉树。假设输入的前序遍历和中序遍历的结果中都不含重复的数字。例如输入前序遍历序列{1,2,4,7,3,5,6,8}和中序遍历序列{4,7,2,1,5,3,8,6},则重建二叉树并返回。 注:设序列初始长度为n。语言:C++ 二叉树结点数据结构规定如下: * struct TreeNode { * int val; * ...原创 2020-01-06 13:34:57 · 73 阅读 · 0 评论 -
【剑指Offer第三题】从尾到头打印链表
题目描述输入一个链表,按链表从尾到头的顺序返回一个ArrayList。 注:设链表长度为n。语言:C++ 链表结点数据结构规定如下: * struct ListNode { * int val; * struct ListNode *next; * ListNode(int x) : * val(x), next(NULL...原创 2019-12-25 21:22:28 · 91 阅读 · 0 评论 -
【剑指Offer第二题】替换空格
题目描述请实现一个函数,将一个字符串中的每个空格替换成“%20”。例如,当字符串为We Are Happy.则经过替换之后的字符串为We%20Are%20Happy。 *注:设给定字符串长度为n。语言:C++ 解法1:正向遍历,遇到空格即进行替换,并将其后的元素相应后移。 void replaceSpace(char *str,int length) { if(length ...原创 2019-12-25 21:22:17 · 86 阅读 · 0 评论 -
【剑指Offer第一题】二维数组的查找
题目描述在一个二维数组中(每个一维数组的长度相同),每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的顺序排序。请完成一个函数,输入这样的一个二维数组和一个整数,判断数组中是否含有该整数。 注:设二维数组为m行n列。语言:C++ 解法1:顺序查找 bool Find(int target, vector<vector<int> > array) {...原创 2019-12-25 17:21:09 · 85 阅读 · 0 评论