- 博客(73)
- 收藏
- 关注
原创 刷OJ的一些小技巧
freopen(“1.txt”,”r”,stdin); //程序运行后系统自动输入此文档里面的内容(不需要进行手动输入) freopen(“1.txt”,”w”,stdout); //程序输出的内容保存在此文件里freopen("C:\\Users\\lefy\\Downloads\\in.txt","r",stdin);memset(a,0,sizeof(a)); //数组的初始化
2017-10-06 12:47:46
1875
原创 Hadoop+Spark分布式集群搭建过程
Hadoop2.7.3+Spark2.1.0完全分布式集群搭建过程1.选取三台服务器(CentOS系统64位) 114.55.246.88 主节点 114.55.246.77 从节点 114.55.246.93 从节点之后的操作如果是用普通用户操作的话也必须知道root用户的密码,因为有些操作是得用root用户操作。如果是用root用户操作的话就不存在以下问题。 我是用root用户操作的。2
2017-05-20 19:39:29
774
原创 格式化输出
printf()格式转换的一般形式如下: %(flags)(width)(. prec)type 以括号括起来的参数为选择性参数,而%与type 则是必要的,下面介绍 type 的几种形式。1) 整数 %d 整数的参数会被转成有符号的十进制数字 %u 整数的参数会被转成无符号的十进制数字 %o 整数的参数会被转成无符号的八进制数字 %x
2016-04-19 21:59:53
512
原创 排序算法再探索
排序方法 平均情况 最好情况 最坏情况 辅助空间 稳定性 冒泡排序 O(n^2) O(n) O(n^2) O(1) 稳定 选择排序 O(n^2) O(n^2) O(n^2) O(1) 不稳定 插入排序 O(n^2) O(n) O(n^2) O(1) 稳定 希尔排序 O(n*log(n))~O(n^2)
2016-04-19 21:53:02
383
原创 自反、对称、传递
假设集合A,以及基于A上的关系R自反: 如果a是A的元素,那么<a,a>是R的元素 反自反:如果a是A的元素,那么<a,a>不是R的元素 对称: 如果<a,b>是R的元素,那么<b,a>是R的元素 反对称:如果<a,b>,<b,a>是R的元素,那么a,b相等 传递: 如果<a,b>,<b,c>是R的元素,那么<a,c>是R的元素
2016-04-19 21:41:37
14994
1
原创 传递引用的特例
given the following code,what will be the output?class Value{ public int i=15;}public class Test{ public static void main(String argv[]){ Test t=new Test( ); t.first( ); }
2016-04-19 17:13:02
355
原创 系统重启
在重新启动Linux系统的同时把内存中的信息写入硬盘,应使用()命令实现正确答案: A 你的答案: C (错误)A. #shutdown -r nowB. #haltC. #rebootD. #init3在linux命令中reboot是重新启动,shutdown -r now是立即停止然后重新启动,都说他们两个是一样的,其实是有一定的区别的。 shutdown命令可以安全地关闭或重启
2016-04-19 13:12:09
1951
原创 Linux进程
关于 linux 的进程,下面说法不正确的是:正确答案: A A. 僵尸进程会被 init 进程接管,不会造成资源浪费;B. 孤儿进程的父进程在它之前退出,会被 init 进程接管,不会造成资源浪费;C. 进程是资源管理的最小单位,而线程是程序执行的最小单位。Linux 下的线程本质上用进程实现;D. 子进程如果对资源只是进行读操作,那么完全和父进程共享物理地址空间。linux提供了一
2016-04-19 12:50:09
1046
原创 Java内存回收算法
两个最基本的java回收算法:复制算法和标记清理算法 复制算法:两个区域A和B,初始对象在A,继续存活的对象被转移到B。此为新生代最常用的算法 标记清理:一块区域,标记要回收的对象,然后回收,一定会出现碎片,那么引出 标记-整理算法:多了碎片整理,整理出更大的内存放更大的对象两个概念:新生代和年老代 新生代
2016-04-18 20:11:22
1734
原创 四大类SQL语言
SQL语言共分为四大类:数据查询语言DQL,数据操纵语言DML,数据定义语言DDL,数据控制语言DCL。1 数据查询语言DQL数据查询语言DQL基本结构是由SELECT子句,FROM子句,WHERE 子句组成的查询块: SELECT <字段名表> FROM <表或视图名> WHERE <查询条件>2 数据操纵语言数据操纵语言DML主要有三种形式: 1) 插入:INSERT 2) 更新:U
2016-04-18 16:30:48
1355
原创 9i中的数据保护模式
数据库Oracle 9i : 最大保护(Maximum protection ) 这种模式能够保证在primary Database发生故障保证数据不丢失。在这种模式下,事务提交前,要保证Redo数据已经写入到Primary Database的Online Redologs,同时写入Standby Database的Standby Redologs,并确保至少在一个Standby Databa
2016-04-18 16:26:41
893
原创 数据库隔离级别
未授权读取(Read Uncommitted):允许脏读取,但不允许更新丢失。如果一个事务已经开始写数据,则另外一个数据则不允许同时进行写操作,但允许其他事务读此行数据。该隔离级别可以通过“排他写锁”实现。授权读取(Read Committed):允许不可重复读取,但不允许脏读取。这可以通过“瞬间共享读锁”和“排他写锁”实现。读取数据的事务允许其他事务继续访问该行数据,但是未提交的写事务将会禁止其
2016-04-18 11:04:13
310
原创 索引
在一个表中可以建立() 多个普通索引,多个唯一索引,多个候选索引,一个主索1.主索引是候选索引的特例,能唯一标识一条记录,只能由一个字段组成。一个表只能建立一个主索引。 必须为主键字段创建一个索引,这个索引就是所谓的“主索引”。主索引与唯一索引的唯一区别是:前者在定义时使用的关键字是PRIMARY而不是UNIQUE。主键是唯一标示的。 2.候选索引也能唯一标识一条记录,但不一定只由一个字段组成,
2016-04-18 10:52:24
745
原创 存储过程简介
什么是存储过程:存储过程可以说是一个记录集吧,它是由一些T-SQL语句组成的代码块,这些T-SQL语句代码像一个方法一样实现一些功能(对单表或多表的增删改查),然后再给这个代码块取一个名字,在用到这个功能的时候调用他就行了。存储过程的好处:1.由于数据库执行动作时,是先编译后执行的。然而存储过程是一个编译过的代码块,所以执行效率要比T-SQL语句高。2.一个存储过程在程序在网络中交互时可以替代大堆的
2016-04-18 10:21:21
1591
原创 SQL绑定变量
下面有关sql绑定变量的描述,说法错误的是? 正确答案: D A. 绑定变量是指在SQL语句中使用变量,改变变量的值来改变SQL语句的执行结果 B. 使用绑定变量,可以减少SQL语句的解析,能减少数据库引擎消耗在SQL语句解析上的资源 C. 使用绑定变量,提高了编程效率和可靠性,减少访问数据库的次数 D. 使用绑定变量,查询优化器会预估的比字面变量更加真实D.绑定变量被使用时,查询优化器
2016-04-17 17:06:02
4191
原创 ibatis 中的#与$
下面有关ibatis 中的#与$的区别,描述错误的是?正确答案: B A #将传入的数据都当成一个字符串,会对自动传入的数据加一个双引号B $方式能够很大程度防止sql注入。C $方式一般用于传入数据库对象,例如传入表名D $将传入的数据直接显示生成在sql中1.#是把传入的数据当作字符串,如#user_id_list#传入的是1,2,则sql语句生成是这样,in ('1,2') ,2
2016-04-17 17:01:51
1285
原创 查看SQL模式
mysql中查看SQL模式的命令是() 正确答案: ACD A. select @@global.sql_mode B. select global.sql_mode C. select @@sql_mode D. select @@session.sql_modeMySQL数据库中,变量分为 系统变量(以”@@”开头)和用户自定义变量。系统变量分为全局系统变量(global)和会话系统
2016-04-17 16:48:13
1797
原创 事务的特性
事务是指对系统进行的一组操作,为了保证系统的完整性,事务需要具有ACID特性,具体如下:1. 原子性(Atomic) 一个事务包含多个操作,这些操作要么全部执行,要么全都不执行。实现事务的原子性,要支持回滚操作,在某个操作失败后,回滚到事务执行之前的状态。 回滚实际上是一个比较高层抽象的概念,大多数DB在实现事务时,是在事务操作的数据快照上进行的(比如,MVCC),并不修改实际的数据,如果有错并不
2016-04-17 16:42:54
355
原创 ALTER TABLE 语句
ALTER TABLE 语句用于在已有的表中添加、修改或删除列。 SQL ALTER TABLE 语法 如需在表中添加列,请使用下列语法:ALTER TABLE table_nameADD column_name datatype要删除表中的列,请使用下列语法:ALTER TABLE table_name DROP COLUMN column_name注释:某些数据库系统不允许这种在数据库表
2016-04-17 11:25:54
465
原创 完整性约束
关系完整性是为保证数据库中数据的正确性和相容性,对关系模型提出的某种约束条件或规则。完整性通常包括域完整性,实体完整性、参照完整性和用户定义完整性,其中域完整性,实体完整性和参照完整性,是关系模型必须满足的完整性约束条件。域完整性约束域完整性是保证数据库字段取值的合理性。 属性值应是域中的值,这是关系模式规定了的。除此之外,一个属性能否为NULL,这是由语义决定的,也是域完整性约束的主要内容。域完
2016-04-17 11:21:26
1173
原创 聚集索引
A table CANNOT have one or more of the following index configurations. 正确答案: D A. No indexes B. A clustered index C. clustered index and many non-clustered indexes D. Many clustered index聚集索引:该索引
2016-04-17 11:07:41
501
原创 值传递 引用传递
下列java程序的输出结果为__。public class Example{ String str=new String("hello"); char[]ch={'a','b'}; public static void main(String args[]){ Example ex=new Example(); ex.change(ex.str
2016-04-16 19:40:19
345
原创 java object默认的基本方法
构造方法摘要Object()方法摘要protected Object clone() //创建并返回此对象的一个副本。boolean equals(Object obj) //指示某个其他对象是否与此对象“相等”。protected void finalize() //当垃圾回收器确定不存在对该对象的更多引用时,由对象的垃圾回收器调用此方法。Class<? extends Object> getCl
2016-04-16 19:27:47
3213
原创 select和epoll
select和epoll这两个机制都是多路I/O机制的解决方案,select为POSIX标准中的,而epoll为Linux所特有的。 epoll的最大好处是不会随着FD的数目增长而降低效率,在selec中采用轮询处理,其中的数据结构类似一个数组的数据结构,而epoll是维护一个队列,直接看队列是不是空就可以了。 nginx就是使用epoll来实现I/O复用支持高并发,目前在高并 发的场景下,ng
2016-04-02 11:10:19
308
原创 红黑树和AVL树
关于红黑树和AVL树,以下哪种说法不正确? 正确答案: DA.两者都属于自平衡二叉树 B.两者查找,插入,删除的时间复杂度相同 C.包含n个内部节点的红黑树的高度是O(log(n)) D.JDK的TreeMap是一个AVL的实现1 好处 及 用途 红黑树 并不追求“完全平衡 ”——它只要求部分地达到平衡要求,降低了对旋转的要求,从而提高了性能。 红黑树能够以 O(log2
2016-04-02 10:59:39
558
原创 Nagle算法
当有一个TCP数据段不足MSS,比如要发送700Byte数据,MSS为1460Byte的情况。nagle算法会延迟这个数据段的发送,等待,直到有足够的数据填充成一个完整数据段。也许有人会问,这有什么影响呢?没有太大的影响,总体上来说,这种措施能节省不必要的资源消耗。但是要发送的总体数据很小时,这种措施就是拖后腿了。比如,用户请求一个网页,大约十几KB的数据,TCP先发送了八九个数据包,剩下几百字节一
2016-04-02 10:48:40
270
原创 ICMP
1.IMCP协议介绍前面讲到了,IP协议并不是一个可靠的协议,它不保证数据被送达,那么,自然的,保证数据送达的工作应该由其他的模块来完成。其中一个重要的模块就是ICMP(网络控制报文)协议。当传送IP数据包发生错误--比如主机不可达,路由不可达等等,ICMP协议将会把错误信息封包,然后传送回给主机。给主机一个处理错误的机会,这 也就是为什么说建立在IP层以上的协议是可能做到安全的原因。ICMP数据包
2016-04-02 10:32:47
483
原创 TCP连接建立与断开
TCP-建立连接在TCP/IP协议中,TCP协议提供可靠的连接服务,采用三次握手建立一个连接。1)是第二次握手,flags位上为12,二进制是0001 0010,即表示有syn和ack. 2)是第一次握手,flags位上为02,二进制是0000 0010,即表示有syn没有ack。 3)是第三次握手,flags位上为10,二进制是0001 0000,即表示有ack没有syn。该连接访问的是80端
2016-04-02 10:22:54
499
原创 mysql 事务
BEGIN或START TRANSACTION;显示地开启一个事务; COMMIT;也可以使用COMMIT WORK,不过二者是等价的。COMMIT会提交事务,并使已对数据库进行的所有修改称为永久性的; ROLLBACK;有可以使用ROLLBACK WORK,不过二者是等价的。回滚会结束用户的事务,并撤销正在进行的所有未提交的修改; SAVEPOINT identifier;SAVEPOINT
2016-03-31 21:17:39
630
原创 OSI七层网络模型极其协议
OSI七层网络模型百科: OSI(Open System Interconnection,开放系统互连)七层网络模型称为开放式系统互联参考模型 ,是一个逻辑上的定义,一个规范,它把网络从逻辑上分为了7层。每一层都有相关、相对应的物理设备,比如路由器,交换机。 OSI七层模型是一种框架性的设计方法,建立七层模型的主要目的是为解决异种网络互连时所遇到的兼容性问题,其最主要的功能就是帮助不同类
2016-03-31 21:03:51
471
原创 Master-Master架构
对于MySQL数据库的Master-Slave架构设计,对于一般的对可用性要求不高的系统来说,是一个不错的设计方案,但是如果对可用性要求较高,就会存在一定的问题,我们先看看Master-Slave架构的特点:一个Master作为主数据库服务器,主要功能是负责处理应用客户端的写数据处理,还担当众多Slave数据库复制数据源的角色。多个master主要是负责应用客户端的读数据处理。但是我们的Master
2016-03-31 20:11:10
3035
原创 MySQL备份模式
MySQL两种备份模式:Logical Backup 和 Raw Backup Logical Backup 就是用诸如mysqldump这样的工具把数据导出为可视的sql文件或csv文件。 Raw Backup 则是指直接备份数据库的数据文件。Raw Backup执行起来比Logical Backup快的多,因为它不需要消耗CPU/内存把数据变成sql或csv(顺便说一下,变csv比变sql要
2016-03-31 20:04:19
653
原创 Java语言类库中几个常用的包
Java语言类库中几个常用的包第一个包:java.lang包。该包提供了Java语言进行程序设计的基础类,它是默认导入的包。该包里面的Runnable接口和Object、Math、String、StringBuffer、System、Thread以及Throwable类需要重点掌握,因为它们应用很广。第二个包:java.util包。该包提供了包含集合框架、遗留的集合类、事件模型、日期和时间实施、国际
2016-03-30 21:16:46
6884
原创 内存区的分配
什么是字符串常量池 JVM为了减少字符串对象的重复创建,其维护了一个特殊的内存,这段内存被成为字符串常量池或者字符串字面量池工作原理 当代码中出现字面量形式创建字符串对象时,JVM首先会对这个字面量进行检查,如果字符串常量池中存在相同内容的字符串对象的引用,则将这个引用返回,否则新的字符串对象被创建,然后将这个引用放入字符串常量池,并返回该引用。实现前提 字符串常量池实现的前提条件就是Java
2016-03-29 11:03:44
384
原创 instanceof运算符
interface A {}class B implements A {}class C extends B {}public class Iinstanceof { public static void main(String[] args) { A ab = new B(); A ac = new C(); B bc = new C();
2016-03-29 10:39:17
301
原创 JSP内置对象
JSP内置对象有: 1.request对象 客户端的请求信息被封装在request对象中,通过它才能了解到客户的需求,然后做出响应。它是HttpServletRequest类的实例。 2.response对象 response对象包含了响应客户请求的有关信息,但在JSP中很少直接用到它。它是HttpServletResponse类的实例。 3.session对象
2016-03-29 10:33:48
189
原创 序列化和反序列化
一、序列化和反序列化的概念 把对象转换为字节序列的过程称为对象的序列化。 把字节序列恢复为对象的过程称为对象的反序列化。 对象的序列化主要有两种用途: 1) 把对象的字节序列永久地保存到硬盘上,通常存放在一个文件中; 2) 在网络上传送对象的字节序列。 在很多应用中,需要对某些对象进行序列化,让它们离开内存空间,入住物理硬盘,以便长期保存。比如最常见的是Web服务器中的S
2016-03-29 10:29:33
214
原创 getParameter() getAttribute()
HttpServletRequest类既有getAttribute()方法,也由getParameter()方法,这两个方法有以下区别: (1)HttpServletRequest类有setAttribute()方法,而没有setParameter()方法 (2)当两个Web组件之间为链接关系时,被链接的组件通过getParameter()方法来获得请求参数,例如假定welcome.jsp和au
2016-03-29 08:46:47
223
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人