- 博客(171)
- 资源 (29)
- 收藏
- 关注
转载 红黑树
之前看了很多写红黑树的博客,但是感觉都讲的不太清楚!没说这样操作如何使他保持平衡的,于是疑惑重重,就看不下去了,一次不经意看到一个人说维基百科的红黑树讲的好,我就随便点了一下一看——这下疯了~,怎么讲的这么好!可以说是把一个复杂的问题,讲得简单化!这太幸福了! 于是我就慢慢学会了!强烈推荐维基的这个讲解,再也找不到比这还好的讲解了!不知道它上边其它的怎么样,反正这个很好!!既然学会了,走过来了,我
2014-01-06 14:20:24 728
转载 平衡二叉树(解惑)
平衡二叉树定义(AVL):它或者是一颗空树,或者具有以下性质的二叉树:它的左子树和右子树的深度之差的绝对值不超过1,且它的左子树和右子树都是一颗平衡二叉树。平衡因子(bf):结点的左子树的深度减去右子树的深度,那么显然-1很显然,平衡二叉树是在二叉排序树(BST)上引入的,就是为了解决二叉排序树的不平衡性导致时间复杂度大大下降,那么AVL就保持住了(BST)的最好时间复杂度O(lo
2014-01-06 14:11:02 953
原创 平衡二叉树之一(基本性质、查询、添加) .
平衡二叉树(Balanced BinaryTree)又被称为AVL树。它具有以下性质:它是一棵空树或它的左右两个子树的高度差的绝对值不超过1,并且左右两个子树都是一棵平衡二叉树。一、平衡二叉树的基本性质根据二叉树的性质高度为h的AVL树,节点数N最多为2h-1;其最少节点树为(((1 + √5) / 2)h+2 - ((1 - √5) / 2)h+2)/ √5 - 1。最少节点数n
2013-12-26 15:29:55 1037
原创 平衡二叉树之二(删除节点) .
类似于添加操作,从平衡二叉树中删除节点也分为两步,第一步完成节点的删除,第二步找到因为删除而导致不满足平衡二叉树要求的子树并对其进行调整。一、 删除节点从平衡二叉树中删除节点更为复杂。首先第一步需要找到要删除的节点x,并分情况进行处理:如果要删除的节点为叶子节点,就找到了要删除的节点如果要删除的节点为只有一棵子树的节点就找到了要删除的节点如果要删除的节点既有左子树,又有右子树,
2013-12-26 15:27:35 1056
转载 平衡二叉树
对于二叉查找树,尽管查找、插入及删除操作的平均运行时间为O(logn),但是它们的最差运行时间都是O(n),原因在于对树的形状没有限制。平衡二叉树又称为AVL树,它或者是一棵空树,或者是有下列性质的二叉树:它的左子树和右子树都是平衡二叉树,且左右子树的深度之差的绝对值不超过1。二叉树的的平衡因子BF为:该结点的左子树的深度减去它的右子树的深度,则平衡二叉树的所有结点的平衡因子为只可能是:-1、
2013-12-25 20:05:30 828
原创 平衡二叉树AVL的笔记
二叉树左子树都小于根节点,右子树都大于根节点。可以动态维护这棵树(因为是树结构,可以有限步完成插入),所以是动态查找算法。时间复杂度为O(logn)在46.5%的情况下,需要把二叉树平衡化成“平衡二叉树”。平衡二叉树平衡二叉树(Balanced>平衡二叉树算法思想若 向平衡二叉树中插入一个新结点后破坏了平衡二叉树的平衡性。首先要找出插入新结点后失去平衡的最小子树根结
2013-12-25 20:04:34 730
原创 平衡二叉树的生成理论
本文由作者收集整理所得,作者不保证内容的正确行,转载请标明出处。作者:关新全1、AVL的插入算法描述在平衡的二叉排序树T上插入一个关键码为kx的新元素,递归算法可描述如下:(一) 若T为空树,则插入一个数据元素为kx的新结点作为T的根结点,树的深度增1;(二) 若kx和T的根结点关键码相等,则不进行插入;(三) 若kx小于T的根结点关键码
2013-12-25 20:02:07 1182 1
原创 动画演示平衡二叉树旋转
转自:http://2002qiqi.blog.163.com/blog/static/17489036200912111929241/ 我们知道在二叉查找树中,如果插入元素的顺序接近有序,那么二叉查找树将退化为链表,从而导致二叉查找树的查找效率大为降低。如何使得二叉查找树无论在什么样情况下都能使它的形态最大限度地接近满二叉树以保证它的查找效率呢?前苏联科学家G.M. Adelson-
2013-12-25 19:47:36 6505
原创 AVL Tree 平衡二叉树基本插入删除节点功能的实现 .
简述:实现AVL 树,主要是两个功能 : 插入某节点和删除某节点AVL Tree的定义,1. 是一棵二叉搜索树(故而每个节点是惟一的, 如果出现重复数字会破坏平衡树的算法)2. 每个节点左右子树的高度之差(平衡因子)相差最多为1实现:为了使所得的二叉树为平衡二叉树,首先在BSTNode中加了一个计算节点高度的方法getHeight(), 当两个节点高度相
2013-12-25 19:42:53 1024
原创 平衡二叉树 1
平衡二叉树又称AVL树。它或者是颗空树,或者是具有下列性质的二叉树:它的左子树和右子树都是平衡二叉树,且左子树和右子树的深度之差的绝对值不超过1。若将二叉树节点的平衡因子BF定义为该节点的左子树的深度减去它的右子树的深度,则平衡二叉树上所有节点的平衡因子只可能为-1,0,1.只要二叉树上有一个节点的平衡因子的绝对值大于1,那么这颗平衡二叉树就失去了平衡。假设我们已经有棵平衡二叉树,现在让我们来
2013-12-25 19:34:20 594
转载 平衡二叉树
形态匀称的二叉树称为平衡二叉树 (Balanced binary tree) ,其严格定义是: 一棵空树是平衡二叉树;若 T 是一棵非空二叉树,其左、右子树为 TL 和 TR ,令> (a)平衡二叉树 (b)非平衡二叉树 图8.3 平衡二叉树与非平衡二叉树相应地定义>动态平衡技术 1.动态平
2013-12-25 19:32:32 690
转载 死亡的骆驼 震撼了谁
话说一只骆驼在沙漠里跋涉着。正午的太阳像一个大火球晒得又饿又渴,它焦躁万分,一肚子火不知道该往哪儿发才好。 正在这个时候,一块玻璃碎片把他的脚掌割破了。。。。。。 疲惫又焦躁的骆驼顿时火冒三丈抬起脚狠狠地把碎片踢了出去,却不小心将脚掌划开了一道深深的口子,鲜红的血液顿时染红了沙粒。 生气的骆驼一瘸一拐地走着,血迹起来了空中的秃鹫,它们在天空中盘旋着,骆驼被吓得狂背起来。。。。。。
2013-12-13 19:47:35 661
原创 C++单例模式
#include using namespace std; //单例类的C++实现 class Singleton { private: Singleton();//注意:构造方法私有 virtual ~Singleton(); static Singleton* instance;//惟一实例 int var;//
2013-12-10 14:03:25 537
转载 深入浅出单例模式---不仅仅是单例
前言:看到我的标题你也许会很奇怪,明明是讨论单例模式,为什么又说不仅仅是单例模式呢?图样图森破!我在这里想和大家分享的不仅仅是JAVA设计模式中的单例模式(Singleton),还有C++中的单例模式,以及单例模式的原理。总之一句话,不服来辩!对于很多从事JAVA编程或者C++编程超过1年的工友来说,就单例模式而言可谓是熟悉的不能再熟悉了吧?So easy!简单的说,就是保持对一个实例的全局范
2013-12-10 13:32:42 551
转载 将string转换成char* (转)
string 是c++标准库里面其中一个,封装了对字符串的操作把string转换为char* 有3中方法:1.data如:string str="abc";char *p=str.data();2.c_str如:string str="gdfd"; char *p=str.c_str();3.copy比如string str="he
2013-12-10 11:39:31 787
转载 C++类静态成员的初始化
记住:通常静态数据成员在类声明中声明,在包含类方法的文件中初始化.初始化时使用作用域操作符来指出静态成员所属的类.但如果静态成员是整型或是枚举型const,则可以在类声明中初始化!!!#includeiostream>usingnamespacestd;classtest{public:staticint num;};inttest::num=
2013-12-09 17:28:39 1099
原创 c++迭代器的使用与简介
除了使用下标来访问vector对象的元素外,标准库还提供了另一种检测元素的方法:使用迭代器(iterator)。迭代器是一种允许程序员检查容器内元素,并实现元素遍历的数据类型。 标准库为每一种标准容器(包括vector)定义了一种迭代器类型。迭代器类型提供了比下标操作更一般化的方法:所有的标准库容器都定义了相应的迭代器类型,而只有少数的容器支持下标操作。因为迭代器对所有的容器都适用,现代C+
2013-12-09 15:44:32 533
原创 C++ map的使用
来源:(http://blog.sina.com.cn/s/blog_61533c9b0100fa7w.html) - C++ map的基本操作和使用_Live_新浪博客 Map是c++的一个标准容器,她提供了很好一对一的关系,在一些程序中建立一个map可以起到事半功倍的效果,总结了一些map基本简单实用的操作!1. map最基本的构造函数; mapmapstring;
2013-12-03 09:41:01 463
原创 C++ map的基本操作和用法
1、map简介map是一类关联式容器。它的特点是增加和删除节点对迭代器的影响很小,除了那个操作节点,对其他的节点都没有什么影响。对于迭代器来说,可以修改实值,而不能修改key。2、map的功能 自动建立Key - value的对应。key 和 value可以是任意你需要的类型。根据key值快速查找记录,查找的复杂度基本是Log(N),如果有1000个记录,最多查找10次,1,0
2013-12-03 09:40:23 459
原创 日语N4复习资料
在历年的日语能力考试中,日语N4的复习资料往往相对较少, 想找个系统性的资料往往比较困难,这里将N4的语法知识进行整理,望大家一定要做好考前的准备哦!1、お~するお动词连用形+します。自谦语,以谦虚来表示对听话人的尊敬。○先生のお荷物は私がお持ちします。老师的行李,我来替您拿。2、~おわる接动词连用形,结束…,完成…○あなたが言い終わったら、私の話も聞いてみてくださ
2013-11-02 16:53:38 2452
原创 Windows 7系统如何卸载IE10 简单三步
今天微软为Windows 7发布了IE10预览版,你是否已经安装?根据笔者的体验,IE10确实如微软所说,在速度、性能等各方面都有了明显提升。 不过,IE10发布预览版安装后会直接替代IE9,如果你想继续使用IE9,或者是使用IE10时遇到了什么难以解决的问题,那么你还可以卸载它,步骤如下: 1、单击“开始”按钮,在搜索框中输入“程序和功能”,然后在左窗格中选择“查看已安装
2013-10-14 09:38:27 721
原创 日语基本句型
编辑导读:日语基本句型5.1.…は…です例:これはふく(服)です。这是衣服。(一般は前面用代词,例如:これ(这个)、それ(那个)5.2.…は…ですか例:それはふく(服)ですか。那是衣服吗?5.3.…はなんですか例:これは何... 日语基本句型 5.1. …は…です 例: これはふく(服)です。 这是衣服。 (一般は前面用代词,例如:これ(这个)、それ(那个) 5.
2013-09-25 10:23:51 1201
原创 日语N4主要句型分享
1.(动词否定形)あまり…/不怎么……;不太…… 2.(名词)をください/请给我(们)…… 3.(动词て形)てください/请你(为我或我们)做…… 4.(动词简体否定形)ないでください/请你不要…… 5.(动词て形)てくださいませんか/请您给我(们)做某事好吗? 6.(动词ます形)ませんか?ましょう(か)/……好吗? 7.(名词)が欲しい(です)/我想得到……;我
2013-09-25 10:17:24 1505
原创 日语学习网址
1,http://jp.hjenglish.com/dl/d29845/2,http://jp.hjenglish.com/dl/d19097/3,http://jp.hjenglish.com/dl/topic/289/4,http://jp.hjenglish.com/dl/d30039/5,http://jp.hjenglish.com/dl/p25357/6,http:
2013-09-25 10:15:59 861
原创 日语“比较”句型
日语中表“比较”的句型1、甲は乙より...です这是表示“甲比乙~”的句型。“…”部分由形容词或形容动词构成。注意日语“より”的位置和汉语“比”的位置不同。例如,今天比昨天热。今日は昨日より暑いです。在这个例...日语中表“比较”的句型1、 甲は乙より...です 这是表示“甲比乙~”的句型。“…”部分由形容词或形容动词构成。注意日语“より”的位置和汉语“比”的位置不同。
2013-09-25 09:50:56 13341
原创 ないで与なくて的异同
摘要:迄今为止,有不少学者研究过「ないで」与「なくて」的异同。本文将通过对比「ないで」、「なくて」各自的用法来进行研究。本文首先对两者的使用方法分别做以说明,然后从三个方面通过举例,来分析「ないで」和「なくて」的区别和共同点。 关键词:接续方法;构成方法;助动词;共同点;区别 一、「ないで」的使用方法 (一)「ないで」的构成方法与接续方法 ma&S4?2i此资料来源于:和风日语
2013-09-25 09:49:13 1010
原创 WaitForSingleObject
临界区临界区是一种最简单的同步对象,它只可以在同一进程内部使用。它的作用是保证只有一个线程可以申请到该对象void InitializeCriticalSection(LPCRITICAL_SECTION lpCriticalSection );产生临界区void DeleteCriticalSection(LPCRITICAL_SECTIO
2013-09-13 09:35:58 617
原创 名词/形容词/形容动词/动词的简体及敬体变形
名詞(健康) 敬体 简体现在肯定式 健康です 健康だ现在否定式 健康ではありません 健康じゃない过去肯定式 健康でした 健康だった过去否定式 健康ではありませんでした 健康じゃなかった 形容動詞(暇) 敬体 简
2013-09-04 14:57:59 5681
原创 日语形容词变化规律总结
日语的 形容词词形与动词一样,分词干和词尾两部分。简单来说,形容词的活用就是指词尾い的形态变化,形容词的词尾变化只有未然形、连用形、终止形、连体形、推量形,而没有命令形。形容词各个活用形的用法 1、未然形(或推量形) 未然形“かろ”后续“う”,构成简体推量形。表示对客观事物的推测。 【变化规律】:词尾い变成かろ 苦しい==苦しかろ 【用例】物価が高い
2013-09-03 13:00:35 2181
原创 日语最常用100常用语
1、こんにちは。 你好。2、こんばんは。 晚上好。3、おはようございます。 早上好。4、お休(やす)みなさい。 晚安。5、お元気(げんき)ですか。 您还好吧。6、いくらですか。 多少钱?7、すみません。 不好意思,麻烦你…。用于向别人开口时。8、ごめんなさい。 对不起。9、どういうことですか。 什么意思呢?10、
2013-09-03 11:10:16 1668
原创 日语语法学习
一. 句型句型时态敬 体简 体判断句现在时肯定 ですだ否定 ではありませんではない、じゃない过去时肯定 でしただった否定 ではありません
2013-09-03 11:02:51 867
原创 日语常见自、他动词对照表
自动词就是后面不能接宾语的动词,即表示动作、作用等由主语自身发生的动词;他动词就是能接宾语的动词,即有明确的动作对象的动词。日语中比较常见的自动词、他动词有: 一、规则的自动词、他动词 1、(が) あ段假名+る-------------(を) え段假名+る あがる (“上、登、提高”等)------あげる(“举、抬、提高”等) あつまる(“集合、集中”)----------
2013-09-03 10:58:30 6452
原创 日语简体与敬体
日语简体与敬体日语中有简体与敬体两种说法,简体是普通说法,可用于会话,也可以用于写文章。如报纸、杂志上的文章皆是。说话时对很熟悉的、有亲切关系的人可用简体。敬体是说话者对听话者表示敬意的一种客气的说法,而且是标准的说法。一般用于会话和讲演,但也可以用于写文章。(1) 判断句 现在过去简体肯定
2013-09-03 10:52:06 2374
原创 C++类静态成员的初始化
记住:通常静态数据成员在类声明中声明,在包含类方法的文件中初始化.初始化时使用作用域操作符来指出静态成员所属的类.但如果静态成员是整型或是枚举型const,则可以在类声明中初始化!!!#include iostream>using namespace std;class test{public:static int num;};int test:
2013-08-30 11:14:51 605
原创 C++中的单例模式
单例模式也称为单件模式、单子模式,可能是使用最广泛的设计模式。其意图是保证一个类仅有一个实例,并提供一个访问它的全局访问点,该实例被所有程序模块共享。有很多地方需要这样的功能模块,如系统的日志输出,GUI应用必须是单鼠标,MODEM的联接需要一条且只需要一条电话线,操作系统只能有一个窗口管理器,一台PC连一个键盘。 单例模式有许多种实现方法,在C++中,甚至可以直接用一个全局变量做到这一点
2013-08-30 09:33:34 455
原创 标准C++中的string类的用法总结
相信使用过MFC编程的朋友对CString这个类的印象应该非常深刻吧?的确,MFC中的CString类使用起来真的非常的方便好用。但是如果离开了MFC框架,还有没有这样使用起来非常方便的类呢?答案是肯定的。也许有人会说,即使不用MFC框架,也可以想办法使用MFC中的API,具体的操作方法在本文最后给出操作方法。其实,可能很多人很可能会忽略掉标准C++中string类的使用。标准C++中提供的str
2013-08-29 09:13:47 421
原创 百度日语输入法快捷键(baidu type)
多语言切换Alt+Shift同一语言下输入法切换Ctrl+Shift同一语言下输入法切换热键还原Ctrl+space(空格)Google日语输入法和微软日语输入法快捷键大体相同Google日语输入法快捷键1) 快捷键Alt + ~(Esc键下边的那个键)可以在直接输入Direct Input(图标A)和平假名Hiragana(图标あ)间切换2) 快捷键Alt + Shi
2013-08-28 09:24:42 4343
原创 日语方位词
上 (うえ) 下 (した)左 (ひだり) 右 (みぎ)前 (まえ) 後 (うしろ) 尾 (お) 尾部;尾巴内 (うち)内部,里面;之中,之内 外 (そと) 外部,户外;外边;表面奥 (おく)里头;深处 表 (おもて) 表面;正面;外表;前部
2013-08-19 13:37:03 4201
原创 学习技巧:日语顺口溜单词记忆法
顺口溜在日语中叫“早口ことば”(はやくちことば) 或“早口そそり”(はやくちそそり),是一种游戏。中文的顺口溜,重点在声调;而日语的顺口溜则重在音节。熟练的说出它们,对熟悉日语很有好处的,不但能记住许多单词,而且又可以找机会露上一小手了。在这里有一些常见的日语绕口令,供朋友们学习利用。当然了,有时间的话可以自己编一些顺口溜。不要忘了,查一下字典,把不认识的单词记下来。1、親鴨が生米噛めば子
2013-08-19 13:35:37 1234
诺基亚C500拍照无声补丁及签名专家
2013-06-13
shockwaveinstaller
2011-11-07
ico图标 全部 包含各种图标
2011-08-25
常见 725个 ico 图标 18M
2011-08-25
数据采集客户端完整 MFC C++
2011-08-25
ComboBox带查找功能
2011-08-17
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人