01 2018 档案
摘要:图的储存(数组模拟临街表) 储存:树的储存可以用图来存储,图的数组模拟邻接矩阵:小兵应该先武装好自己,然后再加入队伍,队长负责周转(管最前面一个)。 遍历:遍历的话也好遍历,管好头尾,头就是队长,尾就是-1。
阅读全文
摘要:java怎么学 给你推荐一个写得非常用心的Java基础教程:Java入门基础教程 | 天码营 这个教程将Java的入门基础知识贯穿在一个实例中,逐步深入,可以帮助你快速进入Java编程的世界。万事开头难,逐步跟着这个教程走一遍,对Java应该就会有一种入门的感觉了。然后再去学习更高级的主题,或者更深
阅读全文
摘要:怎样才是一个基本水平的java程序员? 熟悉常用的数据结构,包括数组,链表,树,哈希表等。 熟悉结构化编程和面向对象编程。 能够阅读UML设计图,根据UML语义进行编码 了解RDBMS和SQL的使用,包括DDL和DML,理解数据库事务(ACID),锁和死锁。 熟悉Java语法特性,正确理解多线程,同
阅读全文
摘要:各种编程语言功能综合简要介绍(C,C++,JAVA,PHP,PYTHON,易语言) 总结 a.一个语言或者一个东西能火是和这种语言进入某一子行业的契机有关。也就是说这个语言有没有解决社会急需的问题。 b.所以无论是编程还是生活,解决的问题都是需求。 比如 C 语言的出现解决了系统程序源代码的可移植性
阅读全文
摘要:易语言简介 总结 a.易语言感觉就是翻译成中文版的那些英语编译语言,易语言解决的问题是没有一点英文基础的编程初学者的入门问题,所以易语言的这个优势没有任何“入流”的机会 b.企业或者社会缺的看英文文档、论文的阅读能力的人 c.程序和英语,必须好玩才好玩下去 一、简介 易语言是一门以中文作为程序代码编
阅读全文
摘要:AVL树、splay树(伸展树)和红黑树比较 一、AVL树: 优点:查找、插入和删除,最坏复杂度均为O(logN)。实现操作简单 如过是随机插入或者删除,其理论上可以得到O(logN)的复杂度,但是实际情况大多不是随机的。如果是随机的,则AVL 树能够达到比RB树更优的结果,因为AVL树的高度更低。
阅读全文
摘要:二叉查找树的删除操作 先说一下如何删除二叉树查找树的节点吧。总共有三种情况 1.被删除的节点是叶子节点,这时候只要把这个节点删除,再把指向这个节点的父节点指针置为空就行 2.被删除的节点有左子树,或者有右子树,而且只有其中一个,那么只要把当前删除节点的父节点指向被删除节点的左子树或者右子树就行。 3
阅读全文
摘要:二叉查找树的前驱后继 二叉搜索树节点的前驱后继节点 之前写过文章介绍了二叉搜索树以及其上的基本操作,但不包括求节点的前驱结点和后继节点。 这是一个很老的问题了,首先看下某节点前驱和后继节点的定义。一个节点的 前驱结点:节点val值小于该节点val值并且值最大的节点 后继节点:节点val值大于该节点v
阅读全文
摘要:替罪羊树 总结: 1、伸展树靠不停的旋转来保持平衡,treap的话用一个随机的东西保持平衡,而替罪羊树直接把不平衡的子树拍平,直接暴力重构来平衡 2、重构允许重构整棵替罪羊树,也允许重构替罪羊树其中的一棵子树。 3、替罪羊树可以和kd-tree结合使用 详解: 0x00 扯淡 知乎上面有个问题问最优
阅读全文
摘要:树链剖分 总结: 树链剖分实质就是将树上的普通节点变成区间的故事,然后用线段树来求解。 1、 其实树链剖分就是把边哈希到线段树上的数据结构。 实现的话很简单,用两个dfs处理数数的信息,重边以及轻边,然后就是一些线段树的操作了。 2、将普通的树变成每个节点是区间的树,用线段树来解决 3、树链剖分中有
阅读全文
摘要:DFS序 总结: 1、树转化为线性:将树通过dfs转化为线性结构,这就是dfs序,和树链剖分有点相似 2、普通树转化为线段树:记录每个节点构成的树(子树)的起点和终点,起点是自己,这样每个点就构成了一个区间,然后对区间的操作就和线段树和树状数组一样了。 3、DFS序主要用来做子树的更新,因为DFS序
阅读全文
摘要:bzoj3224: Tyvj 1728 普通平衡树(平衡树) 总结 a. cout<<(x=3)<<endl;这句话输出的值是3,那么对应的,在splay操作中,当父亲不为0的时候,就一直向上旋转 3224: Tyvj 1728 普通平衡树 Description 您需要写一种数据结构(可参考题目标
阅读全文
摘要:splay树入门(带3个例题) 首先声明,本教程的对象是完全没有接触过splay的OIer,大牛请右上角。。 PS:若代码有误,请尽快与本人联系,我会尽快改正 首先引入一下splay的概念,他的中文名是伸展树,意思差不多就是可以随意翻转的二叉树 PS:百度百科中伸展树读作:BoGang,不知道是不是
阅读全文
摘要:红黑树 概要 目录1 红黑树的介绍2 红黑树的应用3 红黑树的时间复杂度和相关证明4 红黑树的基本操作(一) 左旋和右旋5 红黑树的基本操作(二) 添加6 红黑树的基本操作(三) 删除 作者:Sky Wang 于 2013-08-08 概述:R-B Tree,又称为“红黑树”。本文参考了《算法导论》
阅读全文
摘要:AVL树 总结: 1、节点定义 a. 增加了高度属性,因为平衡树就是为了让树平衡,为了让树的局部没那么高 b. key属性是二叉排序树中的标志属性,排序属性。 2、节点的创建 a. 创建节点的时候将节点的高度都默认为了0,其它操作都和在二叉查找树中一样 3、获取根节点高度(获取树高)的方法 本文采用
阅读全文
摘要:C++构造函数详解 一、 构造函数是干什么的class Counter{public: // 类Counter的构造函数 // 特点:以类名作为函数名,无返回类型 Counter() { m_value = 0; }private: // 数据成员 int m_value;} 该类对象被创建时,编译
阅读全文
摘要:html5--视频播放器实例 总结: 1、相对定位和绝对定位的区别,两者都是浮起来了 2、属性和方法都是有对象的,搞清楚对象之后,属性和方法就很好用了,我们一般可以用document.getElementById("video");来获取对象 3、在外部修改html属性的时候,innerHTML和s
阅读全文
摘要:C++顺序表(模板总结) 总结: 1、模板类的实质是什么:让程序员写出和类型无关的代码 2、模板的对象时什么:方法或者类 3、是对类中的一系列操作,提供一个不固定数据类型的方法 用模板做的类的时候要指明对象 Stack<int> intStack; // int 类型的栈 Stack<string>
阅读全文
摘要:C++模板 模板是C++支持参数化多态的工具,使用模板可以使用户为类或者函数声明一种一般模式,使得类中的某些数据成员或者成员函数的参数、返回值取得任意类型。 模板是一种对类型进行参数化的工具; 通常有两种形式:函数模板和类模板; 函数模板针对仅参数类型不同的函数; 类模板针对仅数据成员和成员函数类型
阅读全文
摘要:C++模板(菜鸟教程) C++ 模板 模板是泛型编程的基础,泛型编程即以一种独立于任何特定类型的方式编写代码。 模板是创建泛型类或函数的蓝图或公式。库容器,比如迭代器和算法,都是泛型编程的例子,它们都使用了模板的概念。 每个容器都有一个单一的定义,比如 向量,我们可以定义许多不同类型的向量,比如 v
阅读全文
摘要:C++动态分配内存 1.堆内存分配 : C/C++定义了4个内存区间: 代码区,全局变量与静态变量区,局部变量区即栈区,动态存储区,即堆(heap)区或自由存储区(free store)。 堆的概念: 通常定义变量(或对象),编译器在编译时都可以根据该变量(或对象)的类型知道所需内存空间的大小,从而
阅读全文
摘要:C++ Web 编程(菜鸟教程) C++ Web 编程 什么是 CGI? 公共网关接口(CGI),是一套标准,定义了信息是如何在 Web 服务器和客户端脚本之间进行交换的。 CGI 规范目前是由 NCSA 维护的,NCSA 定义 CGI 如下: 公共网关接口(CGI),是一种用于外部网关程序与信息服
阅读全文
摘要:css中的绝对定位和相对定位(详解,总结) 总结: 设置绝对定位或者相对定位后都从文档中浮起来了,区别是相对定位还占着原来的位置,绝对定位不占着原来的位置,可以种z-index来改变元素的浮动的堆叠次序。 详讲: 浏览器默认状态下position的属性默认值是static也就是没有定位,元素出现在正
阅读全文
摘要:8-30 音频视频专题 学习要点 掌握HTML5中音频视频的属性方法事件 基础知识回顾 video src 要播放的视频的 URL。 autoplay 如果出现该属性,则视频在就绪后马上播放。 controls 如果出现该属性,则向用户显示控件,比如播放按钮。 height/width 设置视频播放
阅读全文
摘要:二分图染色模板(P1330 封锁阳光大学) 题目描述 曹是一只爱刷街的老曹,暑假期间,他每天都欢快地在阳光大学的校园里刷街。河蟹看到欢快的曹,感到不爽。河蟹决定封锁阳光大学,不让曹刷街。 阳光大学的校园是一张由N个点构成的无向图,N个点之间由M条道路连接。每只河蟹可以对一个点进行封锁,当某个点被封锁
阅读全文
摘要:P1155 双栈排序(二分图染色) 题目描述 Tom最近在研究一个有趣的排序问题。如图所示,通过2个栈S1和S2,Tom希望借助以下4种操作实现将输入序列升序排序。 操作a 如果输入序列不为空,将第一个元素压入栈S1 操作b 如果栈S1不为空,将S1栈顶元素弹出至输出序列 操作c 如果输入序列不为空
阅读全文
摘要:CF 86D 莫队(卡常数) D. Powerful array time limit per test 5 seconds memory limit per test 256 megabytes input standard input output standard output D. Powe
阅读全文
摘要:P1228 地毯填补问题(分治) 题目描述 相传在一个古老的阿拉伯国家里,有一座宫殿。宫殿里有个四四方方的格子迷宫,国王选择驸马的方法非常特殊,也非常简单:公主就站在其中一个方格子上,只要谁能用地毯将除公主站立的地方外的所有地方盖上,美丽漂亮聪慧的公主就是他的人了。公主这一个方格不能用地毯盖住,毯子
阅读全文
摘要:二叉查找树 总结: 1、节点的定义中 a. 左右孩子用指针定义,类似于int *left,因为结构体本身就是一种自定义类型,struct BSTreeNode看成系统的类型int不过分。 b. 用了typedef重定义类型,给struct BSTreeNode起了两个别名Node和*BSTree。
阅读全文
摘要:伸展树 总结 a. 伸展树在插入操作后需要将插入的这个点旋转为根节点 b. 删除操作的时候将删除的那个点的前驱节点设置为根节点 c. 伸展树的伸展操作就是以找到的这个点左旋或者右旋,包括三个步骤,旋转,链接,组合,因为是以找到的这个点为基点来旋转的,所以旋转一步就可以保证找到的这个点为根节点。 d.
阅读全文
摘要:最小生成树(Kruskal和Prim算法) 关于图的几个概念定义: 连通图:在无向图中,若任意两个顶点vi与vj都有路径相通,则称该无向图为连通图。 强连通图:在有向图中,若任意两个顶点vi与vj都有路径相通,则称该有向图为强连通图。 连通网:在连通图中,若图的边具有一定的意义,每一条边都对应着一个
阅读全文
摘要:【bzoj2038】[2009国家集训队]小Z的袜子(hose)(细致总结) Description 作为一个生活散漫的人,小Z每天早上都要耗费很久从一堆五颜六色的袜子中找出一双来穿。终于有一天,小Z再也无法忍受这恼人的找袜子过程,于是他决定听天由命……具体来说,小Z把这N只袜子从1到N编号,然后从
阅读全文
摘要:清橙A1206.小Z的袜子 && CF 86D(莫队两题) 在网上看了一些别人写的关于莫队算法的介绍,我认为,莫队与其说是一种算法,不如说是一种思想,他通过先分块再排序来优化离线查询问题。 应用范围:一般问题是让你回答多个连续区间上的问题,如果你知道了区间【l,r】的答案、你就可以在O(1)或O(l
阅读全文
摘要:poi读取docx中的文字和图片(自己应用)
阅读全文
摘要:poi读写Excel 对于一个程序员来说,文件操作是经常遇到的,尤其是对Excel文件的操作。 在这里介绍一下我在项目中用到的一个操作Excel的工具——POI。关于POI的一些概念,网络上很多,详细信息大家可以自行百度,我在这里只做简单介绍。POI是apache的类库,主要是为java开发人员提供
阅读全文