数据结构
文章平均质量分 62
杜甫如诗
这个作者很懒,什么都没留下…
展开
-
数据结构学习-堆栈
数据结构中的堆栈原创 2017-05-04 11:08:53 · 233 阅读 · 0 评论 -
输入两棵二叉树A,B,判断B是不是A的子结构。(ps:我们约定空树不是任意一个树的子结构)
剑指offer:输入两棵二叉树A,B,判断B是不是A的子结构。(ps:我们约定空树不是任意一个树的子结构)思路:这道题用到函数递归,比较绕。第一个函数bool DoseTree1HasTree2(TreeNode* tree1, TreeNode* tree2)用来判断,第一棵树从当前节点开始是不是包含第二棵树。当中会用到递归自己。第二个函数bool HasSubtree(TreeNo原创 2017-06-30 16:47:32 · 554 阅读 · 0 评论 -
输入一个链表,从尾到头打印链表每个节点的值。
网上搜到了两种方式,但是都没有完整可以一键运行的代码。下面提供代码给像我一样的菜鸟学习。第一种方法:利用stack 先遍历链表,将链表节点的指针存入stack中,再依次将这些指针出栈,将指针对应的数值存入数组中。完整代码如下:// staticTest.cpp : 定义控制台应用程序的入口点。//#include "stdafx.h"#include #include #inclu原创 2017-06-22 22:14:21 · 389 阅读 · 0 评论 -
排序算法之——快速排序
在面试阿里和华为实习生的时候,都被问到快速排序的问题,看来软件岗面试官对这个问题十分重视,因此特别在此剖析。思路:快速排序使用分治法,将问题的规模减小,然后再分别进行处理。从原序列中选择一个主元,将比主元大的元素从右向左放置,而比主元小的元素,从左向右放置。通俗来讲,就是,找一个基准主元,比主元小的元素放在左边,比主元大的元素放在右边,主元放在中间。形成了三个新的数列,左边的数列,中间一个原创 2017-07-09 17:04:17 · 274 阅读 · 0 评论 -
2018年网易笔试题1:输入一个数列a,a有n个元素,对数列b进行操作:1)将a的第一元素放在b的末尾,2)翻转b。将操作1)2)进行n次,求b
2018年网易笔试题1:输入一个数列a,a有n个元素,对数列b进行操作:1)将a的第一元素放在b的末尾,2)翻转b。将操作1)2)进行n次,求b例如输入 1 2 3 4输出 4 2 1 3思路:利用双向链表list避免了reverse#include "stdafx.h"#include #include #include #include #include #in原创 2017-08-12 22:15:38 · 2570 阅读 · 0 评论