
数据结构
文章平均质量分 88
kai8wei
这个作者很懒,什么都没留下…
展开
-
浅谈二叉树的存储表示与实现
#include//输入输出流#include//标准库 typedef struct node { int data; struct node *lchild; struct node *rchild; }*bitree,bitnode;//构造一个新的二叉树bitree initbitree(bitnode *root){ bitree tree=ro原创 2015-01-02 16:29:30 · 493 阅读 · 0 评论 -
交换排序之 冒泡排序(优化) (稳定)
#includeusing namespace std;//冒泡排序属于交换排序 //空间复杂度 O(1)//时间复杂度最坏是O(n2)// 最好是O(n)// 平均数O(n2)templatevoid BubbleSort(T array[],int n)//版本1{ for(int i=0;i<n-1;++i) { for(in原创 2015-09-10 23:44:56 · 464 阅读 · 0 评论 -
用C++实现一元多项式的四则运算包括数据的文件导入与导出
对于一元多项式我们都再熟悉不过了,这是使用数据结构的单链表进行实现的,下面贴一下我的实现代码,欢迎批评指导//test.h#pragma once#include#includeusing namespace std;class P_Sum{public: typedef struct P_node{ double coef; int index; P_node* n原创 2015-08-28 14:53:16 · 3337 阅读 · 0 评论 -
画链表分析图引发的思考
一直觉得IT这个行业是聪明人干的,是经常进行思考的人干的,所以对于任何问题我都会思考。而且,我发现,画图是帮助思考的仙家之水,这不是神话,你一试就知道,如果你一直坚持下去,就会感觉如同吃了太上老君的仙丹一般,对于分析任何问题都会法力大增。 另外,我觉得计算机行业就是用一种方式在描述客观世界,所以不要包学习解决计算机中的问题是脱离实际,当想不通自己如何让计算机解决问题或者弄不懂计算机是如何解原创 2015-05-30 00:08:52 · 2243 阅读 · 3 评论 -
数据结构之 --线性表之--串
简单的实现串的操作,其实这与那些字符串库函数所用的操作思想是相同的,但是这是一种数据的存储方式,与操作,重点强调了数据的存储.下面是串的非堆存储操作,说明白就是穿类似数组的存储,在分配内存时在栈中分配:/********************************************************************** * * Copyright原创 2015-05-30 00:38:46 · 1707 阅读 · 0 评论 -
数据结构之—线性表之—链表之—1.单向链表
链表是一种物理存储单元上非连续、非顺序的存储结构,数据元素的逻辑顺序是通过链表中的指针链接次序实现的。链表由一系列结点(链表中每一个元素称为结点)组成,结点可以在运行时动态生成。每个结点包括两个部分:一个是存储数据元素的数据域,另一个是存储下一个结点地址的指针域。 相比于线性表顺序结构,操作复杂。链表有很多种不同的类型:单向链表,双向链表以及循环链表 等等。 链表的优点: 使原创 2015-04-26 08:56:44 · 577 阅读 · 0 评论 -
揭开链表逆转和排序的面纱
我们都知道,对于顺序表逆转和排序就如同数组一样,将数据改变位置就行,因为他们的数据是连续的空间存储的,但是对于链表如果你也这样只改变值进行排序,那你就太不懂链表的心了,链表的特点就是动态开辟游离的空间然后依据上一个节点所存的地址来寻找下一个节点,这样使得位置这个概念在链表里显得太不重要,所以对于链表我们如果想要逆转或者排序就是要改变每个节点里面存储的地址,通俗一点就是要改变指针的指向,于是我找到了原创 2015-05-05 16:19:31 · 979 阅读 · 0 评论 -
数据结构之—线性表之—浅谈单链表有头结点和无头节点
有头结点的链表统一了算法的实现,无头节点减少了节点个数,但是只有根据实际情况选用真正的有无头接链表待续://代码实现待续://代码实现待续://代码实现原创 2015-04-26 10:45:48 · 7102 阅读 · 0 评论 -
数据结构之—线性表之—双向链表之—浅谈双循环链表
双向链表也叫双链表,是链表的一种,它的每个数据结点中都有两个指针,分别指向直接后继和直接前驱。所以,从双向链表中的任意一个结点开始,都可以很方便地访问它的前驱结点和后继结点。一般我们都构造双向循环链表。/********************************************************************** * Copyright (c)2015,原创 2015-04-27 16:49:55 · 839 阅读 · 0 评论 -
数据结构之—线性表之—顺序表
顺序表是在计算机内存中以数组的形式保存的线性表,是指用一组地址连续的存储单元依次存储数据元素的线性结构。线性表采用顺序存储的方式存储就称之为顺序表。顺序表是将表中的结点依次存放在计算机内存中一组地址连续的存储单元中原创 2015-04-24 20:29:37 · 615 阅读 · 0 评论 -
浅谈二叉树的遍历
二叉树分为三种遍历方式: --这里说的序是针对根节点的。1.先序遍历:根——左——右2.中序遍历:左——根——右3.后序遍历:左——右——根//作为 kai1.h 头文件#include//输入输出流#include//标准库 typedef struct node { char data; struct node *lchild; stru原创 2015-01-02 17:27:19 · 536 阅读 · 0 评论 -
链表操作之快慢指针
使用包括链表的找环 判断链表相交 找倒数第几个节点。。。。。代码:#include#includeusing namespace std;typedef struct node{ int data; int size; struct node*next;}node;typedef node* Lnode;void init(Lnode &head原创 2015-10-24 01:02:00 · 623 阅读 · 0 评论