自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(74)
  • 资源 (10)
  • 问答 (1)
  • 收藏
  • 关注

原创 【数据结构】(单链表)带头链表就地逆置

带头链表就地逆置(就地的意思为 空间复杂度为1)算法思想:链表的逆置采用非递归的方法使用了三个指针详见代码// 带头链表就地逆置(就地的意思为 空间复杂度为1)void Reverse2(LNode *head){ if(head->next->next==NULL||head->next==NULL) //链表中只有一个元素不需要逆置 return; ...

2019-08-17 08:31:20 2057

原创 【数据结构】(二叉排序树)查找二叉排序树第k小的结点

算法思想:我是想到了查找第k个结点的办法也就是二叉树查找先序序列第k个结点将其改造为查找中序序列第k个结点即可 int i=0; int min; void Inorder (TreeNode* &root,int k){ if(!root) return; Inorder(root->left,k)...

2019-08-17 08:12:58 1862

原创 【数据结构】(二叉排序树)从大到小输出二叉排序树中所有值不小于K的关键字

算法思想:其实就是对二叉树进行遍历我们知道中序遍历二叉树是先左子树后右子树是从小到大的,那么先右子树后所字数是从大到小的可以换个图试一下void InOrder(BSTree *root,int k){ if(!root) return ; InOrder(root->rchild,k); if(root->data>=k){ ...

2019-08-16 22:58:24 10890 1

原创 【数据结构】(平衡二叉树)判断二叉树是否是平衡二叉树

算法思想:判断一棵树是否为平衡二叉树可以采取高度差的递归方式来判断这个方法比较简单但是复杂度较高(因为高度被重复计算了很多次)O(nlogn)//递归求高度int height(BSTree *root){ if(!root) return 0; int left=height(root->lchild); int right=height(root->rchild...

2019-08-16 21:29:34 2285 1

原创 【数据结构】(二叉排序树)求出指定结点在给定二叉树的层次

**算法思想:**求指定结点的层次也就是求指定结点的高度,理论上来说有好几种方法,可以类比二叉树求高度的算传送门进行改造,或者直接根据二叉排序树的查找来直接计算,下面给出直接根据二叉排序树查找直接计算的方法首先给出二叉排序树的查找算法做一下借鉴void BST_Search(BSTree *root,int k){ if(!root) return; while (root){...

2019-08-16 14:36:10 9486 1

原创 【数据结构】(二叉排序树)判断一颗二叉树是否是二叉排序树

算法思想: 二叉排序树的中序遍历是有序(从小到大的)的我们只要按照二叉树中序输出的递归代码模板每次输出是与上一次输出的进行比较即可注意:二叉树中序递归模板见----->传送门int JudgeBST(BSTree *root){ if(root==NULL){ //空树是二叉排序树 return 1; } int a=JudgeBST(root->lchild...

2019-08-16 12:31:36 8530 4

原创 【数据结构】(树)已知一棵树的层次序列以及每个结点的度,编写算法构造此树的孩子兄弟链表

已知一棵树的层次序列以及每个结点的度,编写算法构造此树的孩子兄弟链表算法思想:已知先序遍历以及结点度数我们只需要编写代码给每一个除根结以外的结点寻找他们的兄弟和孩子(利用度数寻找孩子与兄弟,利用层次遍历构造辅助数组)详见代码void createCSTree_Degree(CSTree *&T,int data[],int degree[],int n){ CSTree **...

2019-08-06 10:53:34 16988 11

原创 【数据结构】(森林)以孩子兄弟链表为存储结构,请设计递归算法求树的深度

以孩子兄弟链表为存储结构,请设计递归算法求树的深度算法思想:求树的深度采用递归的思想就是求每一个兄弟的深度最大值int Height(CSTree bt){ int hc,hs; if(bt==NULL) return 0; else{ hs=Height(bt.nextsibling);//求兄弟结点的深度 hc=Height(bt.firstchild);//求孩...

2019-08-06 09:41:46 13488 7

原创 【数据结构】(森林)求以孩子兄弟表示法存储的森林叶子结点数

求以孩子兄弟表示法存储的森林叶子节点数算法思想:在孩子兄弟存储中遵循左孩子右兄弟的规则而叶子结点,反应在二叉树上就是没有左孩子的结点typedef struct node{ int data; node *fch,*nsib; //孩子,兄弟}Tree;int Leaves(Tree *t){ if(!t) return 0; if(t->fch==NULL) ...

2019-08-06 09:02:55 12969

原创 【数据结构】(二叉树与森林)设F是一个森林,B是由F转换得到的二叉树,F中有n个非终端结点,B中右指针域为空的结点有?

设F是一个森林,B是由F转换得到的二叉树,F中有n个非终端结点,B中右指针域为空的结点有?解题思路:对于树中的非终端节点(也就是分支结点),每个非终端结点至少有一个孩子结点,不管孩子结点有几个(孩子结点必然是有限的)按照森林转化为二叉树的左孩子右兄弟来看,必然最后一个孩子结点的右指针域是空的,因为他是最后一个孩子他已经没用兄弟了所以此时有n个非终端结点那么就会有n个右指针域为空的结点因为我...

2019-08-05 11:48:27 17367 3

原创 【数据结构】(二叉树)判断两棵二叉树是否相似 递归

判断两棵二叉树是否相似简介:判断二叉树是否相似的方法就是:T1,T2都是空树,或者二叉树只有一个根结点,,或者T1与T2的子树是相似的算法思想:递归的思想就是判断把每一个结点看成“根结点”进行操作即可int similar(BiTree *p,BiTree *q){ if(p==NULL&&q==NULL){ return 1; }else if(p==NU...

2019-08-03 21:13:35 13196

原创 【数据结构】(二叉树)求二叉树带权路径长度(WPL)递归&&非递归

求二叉树带权路径长度(WPL)简介:*树的带权路径长度(Weighted Path Length of Tree,简记为WPL)*二叉树的带权路径长度是每个叶子节点深度(高度)与其指定权重的乘积总和。算法思想:对于求带权路径长度我们只需要找到叶子结点以及叶子结点所在的层数即可,本文将采取递归与非递归两种思路来解题typedef struct BiNode{ int weight;...

2019-08-03 20:59:47 14501 4

原创 C++指针,指针的引用,指针的赋值,指针传递与指针的引用传递

指针有时候真的不是很好懂下面下面我将利用调试的方式讲解一下指针到底是个什么东西这里我使用了链表结构题指针传递传递这张图片我们可以看出head指针的地址与head指针所指向的内容的地址也就是值的地址如下图:继续Debug显而易见p指针所在的地址与head不同说明了什么?说明了当指针作为函数参数传递指针其实就是值传递(也就是把head拷贝一份)如下图:...

2019-08-03 10:14:05 11006

原创 【数据结构】(二叉树)求非空二叉树的宽度 递归&&非递归

求非空二叉树的宽度方法一递归:**算法思想:**当我们看图的时候我们可以知道求二叉树的宽度本质就是求其一层有多少个结点 那么如何用递归的方式去计算每一层结点的个数呢?答案就是:我们只要知道当前结点是那一层就可以利用数组来统计数量了int Max=0;int conut_[MaxSize];void getBiWid(BiTree *T,int k){ //k变量为当前层数 默认从第...

2019-08-02 21:04:42 14896 3

原创 【数据结构】(二叉树)求二叉树中两个节点的最近公共祖先节点 递归&&非递归

递归

2019-08-02 15:30:35 17763 6

原创 【数据结构】(二叉树)打印值为x结点的所有祖先 递归&&非递归

打印值为x结点的送有祖先算法思想: 打印x祖先 首先我们要做的就是查询到这个x值那么如何查询到这个值呢?如何去想我的理解就是在那三个遍历中下手首先我想到了先序遍历并以此写了代码、int flag=0; //定义一个全局遍历来判断是否查找到了值void PrintAncestors(BiTree *T,char x){ if(!T) return; if(T->data=...

2019-08-01 23:59:00 21004 7

原创 【数据结构】(二叉树)二叉树的后序遍历非递归

二叉树的后序遍历非递归算法思想:迭代写法,利用pre记录上一个访问过的结点,与当前结点比较,如果是当前结点的子节点,说明其左右结点均已访问,将当前结点出栈,更新pre记录的对象。**//结构体typedef struct BiTree{ char data; BiTree *lchild; BiTree *rchild;}BiTree;//访问结点void visit(...

2019-08-01 23:15:19 9652

原创 【数据结构】(二叉树)二叉树删除结点值为x的子树

删除结点值为x的子树方法一递归:

2019-08-01 11:17:27 19562 4

原创 【数据结构】(二叉树)求先序遍历序列中第K个结点

算法思想: 其实就是定义一个全局遍历去寻找k值 递归代码为先序遍历代码:int i=0;;void PreNode(BiTree *T,int k){ if(!T){ return ; } i++; if(i==k){ visit(T); //或者返回该节点的值 return ; } PreNode(T->lchild,k); PreNode(T-...

2019-07-31 23:26:43 16329 4

原创 【数据结构】(二叉树)递归交换二叉树的左右子树

**算法思想:**递归交换二叉树左右子树可以采取先序,中序,后序,遍历的思想,划分子问题对其求解代码:void Swap(BiTree *&right,BiTree *&left){ BiTree *temp=right; right=left; left=temp;}void SwapSubtrees(BiTree *T){ if(!T) return ...

2019-07-31 23:02:02 11856 4

原创 【数据结构】(二叉树)递归求解双分支结点个数

算法思想: 求二叉树双分支结点个数就是当一个结点左右孩子非空时该结点为双分支结点//二叉树结构体定义typedef struct BiTree{ char data; BiTree *lchild; BiTree *rchild; }BiTree;int DsonNodes(BiTree *T){ if(!T){ return 0; } if(T->rch...

2019-07-31 22:37:24 14578

原创 【数据结构】(二叉树)判断二叉树是否为完全二叉树

检查二叉树是否为完全二叉树算法思想:检查二叉树是否为完全二叉树思想就是与满二叉树做对比,可知完全二叉树只有最右面是空的。采用层次遍历的方式在入队列的过程中空指针也要进行入队若空指针后面还有非空元素则该二叉树不是完全二叉树结构体typedef struct BiTree{ char data; BiTree *lchild; BiTree *rchild; };代码:in...

2019-07-31 22:14:18 10592 1

原创 【数据结构】(二叉树 )线索构造二叉树

中序线索二叉树的构造结构体typedef struct TBTNode{ int data; int rtag; int ltag; TBTNode *rchild; TBTNode *lchild;};核心代码/线索二叉树的中序遍历 递归void inThread(TBTNode *p,TBTNode *&pre){ if(p!=NULL){ inT...

2019-07-31 21:02:00 8858 2

原创 【数据结构】 (二叉树)二叉树的先序中序和后序列遍历 递归&&非递归

递归思想遍历二叉树对于递归思想来说只要把握好子问题就可以了。 因为二叉树中每个结点都会被经历三次,其实先序,中序,后序遍历就对应了第一次经历结点时访问,第二次经历访问,第三次经历访问。显而易见递归代码就写出来了如下//二叉树先序遍历 void preorder(BiTree *b){ if(b!=NULL){ visit(b); preorder(b->lchild); ...

2019-07-31 20:57:27 9364

原创 【数据结构】(二叉树)计算二叉树的高度递归与非递归 三种方法 C语言

递归法求二叉树高度递归法可以理解为一个子问题当一棵树只有左孩子和右孩子的时候我们只需要计算其左孩子的高度和其右孩子的高度并且求的他门两个之间的最大值并且+1即可 这个1就是根节点这样我们就得到了递归代码如下/**计算二叉树的高度 递归法*/int getdepth3(BiTree *t){ if(t!=NULL){ int ldpth=getdepth3(t->lchil...

2019-07-31 20:45:13 16702

原创 【数据结构】(二叉树)根据先序和中序唯一确定一颗二叉树

完整代码BiTree* PreInCreate2(char pre[],char in[],int s1,int end1,int s2,int end2){ BiTree *root=(BiTree*)malloc(sizeof(BiTree)); root->data=pre[s1]; int i; for(i=s2;in[i]!=root->data;i++)...

2019-07-31 20:33:09 9485

原创 Ubuntu java ee创建 web 笔记

不要先启动tomcat 不然 会提示你的 端口号被占用 需要 在 eclipse 中启动 服务

2018-07-27 10:08:33 147

原创 Ubuntu tomcat 环境变量 设置

然后进入目录/usr/tomcat/apache-tomcat-8.5.9/bin,编辑文件startup.sh,在最后一行之前加入如下信息:#set java environmentexport JAVA_HOME=/usr/java/jdk1.8.0_111export JRE_HOME=${JAVA_HOME}/jreexport CLASSPATH=.:%{JAVA_HOME}...

2018-07-26 21:04:00 1016

原创 搭建 java ee jdk 遇到的问题

解决方案:解决办法是在终端进入你的eclipse目录,然后输入:mkdir jre cd jre ln -s /usr/java/jdk1.8.0_181/bin bin    //软连接上句话即是:在eclipse(可执行的eclipse文件)中创建运行环境(jre)将原来jdk的bin目录软连接到jre目录下这样当eclipse同jdk运行自己的jre下的binjdk环境变...

2018-07-26 20:55:19 433

原创 Ubuntu mysql 修改密码

 ubuntu下安装了mysql后,发现却无法以root登录。提示: access denied for user root @localhost是因为auth_socket的验证类型引起的。首先 sudo gedit /etc/mysql/deblan.cnf然后使用 里面的帐号 密码登录mysql -u debian-sys-maint -puse mysqlu...

2018-07-26 18:21:57 349

原创 Ubuntu16.04 安装jdk1.8.0_181并配置环境变量

地址:http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html1. 创建安装目录 mkdir /usr/local/jdk2. 解压 tar -zxvf jdk-8u181-linux-x64.tar.gz -C /usr/local/jdk3. 设置环境变量 全局设置:su...

2018-07-26 16:22:33 2431

原创 Apache Windows 下载配置 以及服务启动失败解决办法

访问网站      http://httpd.apache.org/download.cgi点击如下点击如下这里根据需求选择 我的电脑是64位系统 所以选择64位下载完成后解压 (最好解压到根目录下)若放到起到目录下目录名不得含有中文之后 打开cmd 并切换到这个目录的bin目录下复制代码代码如下:httpd -k install如果想指定服务的名称,可以使用下面的命令。当你在同一机器上安装多个A...

2018-06-17 14:35:35 2652

原创 VMware-----安装VMware Tools 简易教程

分享一下我安装VMware Tools的过程很简单首先  在虚拟机设置里面 找到CD并且运行 Linux.iso (该文件在VMmare文件夹下)开启虚拟机找到压缩包 并将其复制到粘贴到home下打开终端 获取root权限若获取失败则需要修改密码 如下之后输入 如下命令 lstar xvf VMwareTools-10.0.0-2977863.tar.gz -C /vmtools (按一下Tab键...

2018-06-15 00:59:03 1118

原创 LitePal图片存储操作以及将相机与图库的照片文件存入数据库并取出加载到imageview

Android 笔记 litepal 图片存储与加载今天本想仿qq制作从相机或图库加载照片当做头像,遇到了很多问题,特写此笔记以作总结.主要用的变量与常量如下 public static final int TAKE_PHOTO = 1; public static final int CHOOSE_PHOTO = 2; private Button paizhao, xia...

2018-06-09 22:05:25 2156 2

java ScoketSercer 演示亲测可用

可以再 Windows 终端运行 此代码 一个为客户机 一个为 服务端

2018-07-16

Linux基于多级目录的文件管理系统

操作系统课程设计 直接可用 源代码 Linux基于多级目录的文件管理系统 与终端操作文件命令 相同 账户与密码 为root 运行后输入help查看命令

2018-07-16

WebApi搭建简单服务器demo亲测可用

WebApi搭建简单服务器 直接用vs打开就可以用 使用c#搭建的简易服务器

2018-07-16

java Swing mysql实现简单的购物系统项目源码以及导入教程

java Swing mysql实现简单的购物系统项目源码以及导入教程 实现商品的增加 修改 商品类别增加修改 管理员系统 客户账户系统 购买 系统 结账系统

2018-07-16

Android 两个手机实现qq聊天--两个手机之间通讯

android 通信实现一个手机是客户机一个手机是服务器 实现qq聊天系统

2018-07-16

Android ServerSocket 示例

可以再Android Studio 上运行的 服务端 可以实现一个 手机做服务器 其他手机做客户机

2018-07-16

Android百度地图demo

百度地图demo demo里面使用了 百度官方sdk 分享学习百度api

2018-07-16

Android Studio学生信息管理系统

自制学生信息管理系统 精美界面 功能1.用户信息注册,密保验证更改密码 2. 学生信息录入,查询,修改,更新 3.仿qq换头像,可以点击用户头像进行头像切换和拍照 4.采用侧滑菜单,recyclerview 与cardview 5.数据库使用Sqlite 框架使用 litepal 6 实现学校学生信息统计概况 7.实现模糊查询 精确查询等 界面精美 且有待开发 欢迎各位来讨论

2018-07-16

未来教育考试系统(免激活)

计算机二级 未来教育考试系统 有题库资源 免激活 想考二级可以看一下

2018-07-16

学生信息管理系统

基于郭神的litepal框架制作的简易学生信息管理系统.具有增删查改.等功能可供参考

2018-06-07

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除