- 博客(33)
- 收藏
- 关注
原创 前端Flexbox
利用html5语义化标签,创建一个简单的页面布局,html 代码:Flexbox LogolinklinkButtonMain ContentSidebarMade by Chilam 主要是利用flexbox的CSS:.main-sidebar-wrapper {d
2017-04-20 20:10:04 339
原创 java 字符串,表达式,等陷阱
1. 关于字符串的陷阱java程序中创建对象的常规方式有如下4种:通过new()调用构造器创建java对象通过class对象的newInstance()方法调用构造器创建java对象通过java的反序列化机制从IO流中恢复java对象通过java对象提供的clone()方法复制一个新的java对象除此之外,还允许直接量创建java对象,如 String str="a
2016-04-11 16:19:56 457
原创 常见java集合的实现细节
一、set 和map set 代表一种集合元素无序、集合元素不可重复的集合,map则代表一种由多个key-value对组成的集合,map集合类似于传统的关联数组。表面上看它们之间相似性很少,但实际上两者之间有莫大的关联,可以说,map是set的扩展。1.1 set 和map的关系对比两者的继承类体系,可以发现有相似的地方这些Map集合的key具有一个
2016-04-10 15:02:17 509
原创 java 对象与内存
java内存管理分为两个方面:内存分配和内存回收不能随意挥霍java的内存分配,会造成java程序的运行效率低下:不断分配内存使得系统中可用内存减少,从而降低程序运行性能。大量已经分配内存的回收使得垃圾回收的负担加重,降低程序的运行性能。1. 实例变量和类变量的内存分配 java程序的变量大致分为成员变量和局部变量。局部变量分为3类:形参:
2016-04-09 15:23:34 955
原创 java 数组和内存
java数组的初始化分为两种方式:静态初始化:初始化时由程序员显示指定每个数组元素的初始值,由系统决定数组长度动态初始化:初始化时程序员只指定数组长度,由系统为数组元素分配初始值。不管采用哪儿种方式初始化Java数组,一旦初始化完成,该数组的长度就不可变,可以通过length来获取数组的长度信息。如上图当我们用上面两种方式定义一个数组时,例如 string[
2016-04-08 14:47:46 475
原创 Mysql常用函数
1.数值函数 abs() 返回x的绝对值ceil() 返回大于x的最大整数floor() 返回小于x的最大整数mod(x,y) 返回x/y的模rand() 返回0~1内的随机值round
2016-04-08 12:18:11 192
原创 Mysql 入门第五课
1.索引的优点无索引的表就是一组无序的行,如果要查询,要进行全表扫描。使用索引提高查询效率的做法是,我们可以得知匹配行在什么位置结束,从而跳过其余部分。另一种是利用定位算法,不用从索引开始位置进行线性扫描,即可直接找到第一个匹配项(例如利用二分搜索比扫描要快很多)为何不直接对行数据进行排序,省掉索引操作呢? 如果表里只有一种索引,那是可以这么做的,但是你可能还想添加第二个索引,但又
2016-04-06 14:22:24 276
原创 Mysql入门第四课 视图和存储程序
1. 视图是一个虚表,它像一个表,但实际上又不包含数据。其实,它是根据表和其他视图来进行定义的,并且提供了另一种查看数据的方式。使用select 语句来定义视图,查询视图就等效于查询定义它的那条语句,只是视图将细节隐藏起来。视图定义里可以包含表达式计算和连接等操作。一个基本的视图可以只选择表的部分列。假设经常要从student这个表中只取name, addr, score这3列,但是并
2016-04-05 18:11:13 349
原创 mysql入门第三课
Mysql的表达式计算规则是什么?在表达式里,可以广泛地使用各种运算符和函数来检索、显示和操作数据。表达式计算包含了很多约束类型转换的规则。当某种类型值用于与其类型不相同的环境时,这些规则就会发挥作用。理解类型转换什么时候会发生很重要,因为有些类型 转换毫无意义,而且会导致不合理的结果值。例如,当把字符串‘13’赋给一个整型列时,Mysql会自动将其转换为整数值13。但是,当你把字符串‘abc’赋
2016-03-29 15:51:45 599
原创 Mysql 入门第二课
接着昨天的内容我新建一个名为president的表格,用insert into 语句插入内容的时候,出现一个警告,然后用show warnings;来查看。其实应该是我的表中的birth, death变量的数据类型写错,我定义为了time,实际应该为date。一开始我自己没发现啊,然后就觉得奇怪有警告。就这样我还傻傻的继续插入值,然后select *from一下,就发现了问题
2016-03-23 18:23:26 269
原创 Mysql入门第一课
在我看了"21天学习java"这本书之后,当然这本书挺浅,只介绍了一些java的基本知识吧,在这本书的最后一章提到数据库,所以我就先学一下Mysql,在装这个mysql的时候,过程略艰辛,各种问题,但最后都一一解决了,我装的5.6免安装版的,然后下了一个可视化软件。下面是我自己建的简单的三张表格,来大概的了解一下mysql的一些基本知识。我也是今天刚开始一边看书,一边自己码一下。要坚持!
2016-03-22 16:47:43 366
原创 Java入门笔记
父类的静态方法可以被子类的静态方法覆盖父类的非静态不能被子类的静态方法覆盖‘父类的静态方法不能被子类的非静态方法覆盖覆盖是用于父类 和子类之间关键点是在声明对象引用时:son m=new Son(); math m=new Son();final关键字修饰类时,说明此类不能有子类,即不能被继承。final修饰方法的时候,说明这个方法不能被重写类里可以有
2016-03-19 19:22:31 305
原创 (C++ )矩阵
template class matrix{public:matrix(int r=0,int c=0);matrix(matrix&m);~matrix(){ delete[]melem;}void input();void output();T & operator()(int i,int j);matrix&operator=(matrix&m);ma
2015-11-01 18:18:20 852
原创 字符串
/*串的顺序存储结构*/class seqstring{public:seqstring();seqstring(char*);seqstring(seqstring &t);int strlength();int strcom(seqstring t);void strcon(seqstring s,seqstring t);int index(seqstri
2015-10-31 21:41:02 351
原创 循环队列和链队列
template class cirqueue{public:cirqueue(int size){if(size>0){maxsize=size;queue=new T[size];front=0;rear=0;}}~cirqueue(){delete[]queue;}bool queueempty(){ return rear
2015-10-30 14:11:48 462
原创 顺序栈与栈链以及其应用
顺序栈template class seqstack{public:seqstack(int size){if(size>0){ maxsize=size;stack=new T[maxsize-1];}top=-1;}~seqstack(){delete[]stack;}void push(T x);void pop(T &x);
2015-10-30 10:56:59 283
原创 双向链表
单链表和单循环链表的结点中只设有一个指向其直接后继的指针域,因此,从某个结点出发只能顺着指针向后访问其他结点。若需要查找结点的直接前驱,则需要从头指针开始查找某结点的直接前驱结点。如若希望从表中快速确定一个结点的直接前驱,只要在单链表的结点类型中增加一个指向其直接前驱的指针域prior即可。这样形成的链表中有两条不同的方向的链,因此称为双向链表。template class doublelin
2015-10-29 20:33:01 247
原创 线性链表和单循环链表
templateclass linklist;template class listnode{public:friend class linklist;/*友元类*/private:T data;listnode* next;};template class linklist{public:linklist(){ head=NULL;}~link
2015-10-29 16:47:43 618
原创 顺序表的应用实例
创建一个大小为6的整数L;输出该表的长度(为0),判断表是否为空;先插入第一个元素3,然后插入第二、第三个和第四个元素6、9、12,输出表;取出第二个元素并输出,删除第一个元素并输出;输出表以及表中所有元素。template class seqlist{public:friend void convert(seqlist&L);//友元函数seqlist(int size)
2015-10-28 18:42:10 709
原创 约瑟夫
约瑟夫问题源于一个犹太人的故事,相传在罗马入侵的时候,犹太人决定宁死不降,于是决定了一个自杀方式,所有41个人排成一个圆圈,从第一个人开始报数每报数到3人,这个人就得自杀,然后再由下一个人重新报数。直到剩下最后一个人自杀。Josephus和他的朋友不想自杀,所有他想出了一个方法,将自己与朋友安排在了巧妙的位置上,从而躲过了自杀。编写一个程序,计算出他们的位置。分析:如果他们两个人想活下
2015-10-27 20:27:48 428
翻译 三色球
题目要求:有16个球,其中白色球5个,黑色球4个,蓝色球7个,如果从中无返回任意取出10个球,请编写一个程序计算出3种颜色都有的情况下多少种颜色搭配,并输出每一种颜色搭配。分析:解决这类问题,最直接的方法就是穷举法。穷举出所有可能的解,然后再去除不符合题意要求的解,剩下的就是我们所需的解了。从上面分析来看,如果要求出所有3种颜色的搭配方案,那么我们只需要在3个都允许的范围内取值,并保证3个球的
2015-10-24 19:07:22 451
翻译 水仙花数
水仙花数:一个n位数的各位数字的n次幂的和恰好等于这个n位数本身,那么这个数就叫做水仙花数。比如371=3(3)+7(3)+1(3 )题目要求:设计一个程序,找出所有3位数的水仙花数#includeusing namespace std;int jugeflower(int number)//判断一个三位数是否为水仙花数//{if(number999){cout
2015-10-24 18:44:21 354
翻译 数论有关基本算法c+
基本数论概念1.约数 用符号d/a表示d除以a,即存在某个整数k,使得a=kd。其中a称为d的倍数。如果d/a,且d>0,则称d 是a的约数。2.素数 素数是指一个大于1的整数a,如果它只能被平凡约数1和它本身整除,那么这个数就是一个素数。3.合数 合数是一个与素数相对的概念。如果大于1的整数a,除了1和它本身之外,还能被其他整数整除,那么这个数就是一个合数。4.公约数
2015-10-24 15:31:54 699
翻译 C++ 链表
链表也是一种线性表,它的数据逻辑组织结构也是一维的,但链表的物理结构与顺序表有很大不同,链表的物理存储结构是一堆地址任意的存储单元,也就是说,链表中的数据在内存中的物理位置可能相互邻接也不可能不邻接。链表分为单链表、双链表和循环表几类。我们从简单的单链表入手;templateclass linklist{public:linklist()//无参数构造函数//{head=n
2015-10-24 14:58:30 315
翻译 C++ 栈的应用实例
有一个整数集合{23,56,11,4,87,98},将它们依此存入某数据结构,然后输出,要求输出的顺序为:11,4,56,98,87,23#include#include"stack.h"using namespace std;int main(){stacks=stack(6);int temp=0;s.push(23);s.push(56);s.push
2015-10-24 12:49:56 680
翻译 C++ 栈
栈是顺序表或者单链表的一种特殊表现形式,也就是栈的基础是顺序表和单链表。栈是一种元素满足先进后出(LIFO)规则的线性表。这种要求也决定了栈的操作是在表尾(栈顶)进行。一般来说,我们将栈的表头称为栈底,将栈的表尾称为栈顶,向栈内添加元素,我们称为入栈(push),删除元素我们称为出栈(pop)。栈一旦形成,栈底的位置固定,没有任何元素的栈叫做空栈,随着元素的增加,栈顶指针会上移;随着元素的出栈,栈
2015-10-24 12:06:41 363
翻译 C++ 队列
队列是一种元素遵循先进先出(FIFO)原则的线性结构。是在线性表的基础上实现的,队列要求只能在队尾插入元素,从队首删除元素,插入元素称为入队,删除元素称为出队。队列的定义:templateclass queue{public:queue(int size){maxsize=size;front=0;rear=0;count=0;elements=new
2015-10-23 20:42:10 282
翻译 C++ 散列表
templateclass hashtable{public:hashtable(int size){maxsize=size;count=0;elements=new datatype[maxsize];if(elements==NULL)exit(1);for(int i=0;ielements[i]=NULL;}~hashtable()
2015-10-23 19:21:29 518
翻译 C++ 二叉树
二叉树结点定义templateclass binarytreenode{public:binarytreenode()//空结点//{data=NULL;lchild=NULL;rchild=NULL;}binarytreenode(datatype newdata)//非空结点//{data=newdata;lchild=rchild=NULL
2015-10-23 18:51:44 225
翻译 学习算法第三篇:查找算法
1.顺序查找顺序查找主要是针对顺序文件运行的查找指定关键记录的算法,根据物理存储地址是否相连又分为连续顺序文件和链接顺序文件。这里讲的是连续顺序文件:算法的想法十分直观简单(1)从文件的第一个记录开始,将每个记录的关键字与给定的关键字比较(2)如果找到某个记录的关键字等于key,则查找成功,返回位置;如果所有记录都进行了比较,仍未找到与k相等的记录,则给出0,表示查找失败。te
2015-10-22 10:46:33 298
翻译 学习算法第二篇:排序算法
1.快速排序该算法是一种运用分治思想的算法,它的主要思想是:有待排序数组S={d1,d2,d3,....dn},从中找出元素V,我们称之为划界元素,将剩下的元素中小于或等于V的元素移动到V的前面,将大于或等于V的元素移动到V的后面,这样V就找到了它的最终的排序位置,并将数组分为两个子数组S1和S2,然后利用递归,实现排序。void qsort(int a[],int low,int hig
2015-10-22 09:41:22 425
翻译 学习算法第一篇:排序算法
1.插入排序适合对少量元素进行排序的有效算法,插入算法采用的方法和我们平时打牌是相似的,每抽一张牌,都会按花色大小插到合适的位置。每次从数据集里拿来一个数据,就将它放置到已排序队列的正确位置。例如:有一个待排序列{4,9,7,20,3,16,18},首先是第一个数4,{(4),9,7,20,3,16,18},接下来是9,然后序列是{(4,9),7,20,3,16,18},依此如此将数逐
2015-10-21 22:52:17 336
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人