自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

Bob的博客

这是只追求自由的灵魂。

  • 博客(41)
  • 收藏
  • 关注

原创 红黑树系列1——红黑树的建立

原创码字不易,转载请注明出处,谢谢~红黑树系列2——红黑树的删除(码字中,待发表)红黑树系列3——红黑树的应用(码字中,待发表)红黑树系列4——红黑树的代码实现(码代码中,待发表)红黑树动态建立,删除网站(强强强强烈推荐,根据网页上自己构建和删除几遍红黑树,比看文章有用太多太多):https://www.cs.usfca.edu/~galles/visualization/RedBlack.html目录一、红黑树的建立1、建立红黑树例子1、解决连续右右红色节点例子2、解决

2021-05-10 23:32:12 2327 2

原创 已知二叉树先序序列和中序序列,求后序序列

回答了百度知道上的一个提问,原题是这样的:当一棵二叉树前序序列和中序序列分别为HGEDBFCA和EGBDHFAC时,其后序序列为什么?当一棵二叉树前序序列和中序序列分别为HGEDBFCA和EGBDHFAC时,其后序序列为什么?虽然我已知道答案为EBDGACFH,请求详细算法,c语言或java都可以,也算是对你自己的一次挑战吧?哈哈我是因为悬赏100分才做的。 先给出我的思路:1

2017-06-15 11:06:57 16350 1

原创 保存页面文本到本地文件&&读取本地文件内容到页面

问题描述:假设网页有个文本框之类的东西,想通过点击某一按钮后,将用户在文本框中输入的内容直接保存在本地某个文件中。同理,也想通过页面直接读取本地文件中的内容。 问题分析:因为整个处理过程不涉及到后台的运行,所以处理过程应该在前台进行处理。那就是通过js代码来处理。 解决过程:通过在网上查找,发现了js中的ActiveXObject类。 将页面用户填入的信息保存到本地文件中:

2017-06-15 10:54:01 4643

原创 将页面信息保存到本地文件和读取本地文件信息到页面

问题描述:假设网页有个文本框之类的东西,想通过点击某一按钮后,将用户在文本框中输入的内容直接保存在本地某个文件中。同理,也想通过页面直接读取本地文件中的内容。 问题分析:因为整个处理过程不涉及到后台的运行,所以处理过程应该在前台进行处理。那就是通过js代码来处理。 解决过程:通过在网上查找,发现了js中的ActiveXObject类。 将页面用户填入的信息保存到本地文件中:

2017-04-11 15:06:37 7290

原创 《Java虚拟机精讲》前两章的一些简单总结

《Java虚拟机精讲》前两章的一些简单总结。 一、Java体系结构1、Java现在发展出来三个版本,分别是JavaSE,JavaEE,JavaME。比如我们在下载Eclipse的时候,针对不同的Java版本会有不同的IDE。         区别:JavaSE是标准版,包含Java的全部API,也就是基础类库;JavaEE,是企业版,在JavaSE的基础上扩展了web组建,分布式,

2017-03-23 14:53:34 525

原创 设计模式之工厂方法模式和开放-封闭原则

设计模式之工厂方法模式和开放-封闭原则          以下所有仅供记录和参考,如有问题,我也没办法,但还是请:转载注明出处。          关于简单工厂模式参见之前写的设计模式之简单工厂模式。         在记录简单工厂模式的时候有提到这么一句话:简单工厂模式是工厂模式的特殊情况。其实话也不能这么说,研究了工厂方法模式之后,才发现,它是基于面向对象的“开放-封闭原则

2017-03-23 12:19:28 1921

原创 设计模式之简单工厂模式

设计模式之简单工厂模式          以下所有仅供记录和参考,如有问题,我也没办法,但还是请:转载注明出处。          在23种设计模式之中,和工厂相关的有三种:1.简单工厂模式;2.工厂方法模式;3.抽象工厂模式。其中,简单工厂模式是工厂方法模式的特殊情况。         下面记录一下简单工厂模式,先给出一个例子来说明为什么要使用简单工厂模式。

2017-03-21 22:06:13 328

原创 Java中的super关键字

简单说一下Java中的super关键字。super关键字的用法源自于Java的三大特性之一的继承。也就是说有了继承,才有了super关键字。super的英文基本意思是“超”。在Java中也是这么理解的,super代表的就是超类的意思。而我们习惯上把超类叫做父类。super主要有两种用法。一是:调用父类构造方法二是:调用父类的属性和一般方法下面简单

2016-05-02 17:38:32 3404

原创 分布式计算——实现简单的浏览器和web服务器

此次是分布式的第三次作业,作业要求如下:1、基于TCP通讯(ServerSocket、Socket套接字),编写一个带有图形用户界面的浏览器和一个支持文档读取并返回给客户浏览器的web服务器。客户端支持超链接事件处理,服务器采用多线程技术支持并发访问。2、在此基础上,修改服务器侧设计与实现,使之能够动态地添加客户端请求的类文件,即设计一个小服务程序容器。3、试在服务器侧代码

2016-04-24 23:47:45 3413

转载 什么是序列化,为什么要序列化。

转自:网络--(忘记从哪看到的了)整理:Bob在学习分布式计算的时候,老师上课提到序列化这个概念。当时有些懵逼,不知道什么是序列化,下来查了一下,原来在Java里面,序列化就是和Serializable接口相关的东西。以下是我从网上找到的关于,什么是序列化,为什么要序列化解释的比较好的一篇博文。================================

2016-04-18 11:10:25 48076 3

转载 让网页中的Java Script代码自动执行的三种方法

转自:开源中国--柠檬酷整理:Bob在网页中JS函数自动执行常用三种方法:  在HTML中的Head区域中,有如下函数: LANGUAGE = "JavaScript">    functionn MyAutoRun()  {     //以下是您的函数的代码,请自行修改先!   alert("函数自动执行哦!");    }

2016-04-18 10:40:44 7272

原创 简单的投票页面,只有一个html页面

帮鸟写了个最简单的投票页面,他要求最简单,所以界面就写的很简单,也没有什么大的功能。关于html的代码就不注释了,我比较喜欢这段JS代码,所以就注释一下JS代码。代码如下:动漫投票<!-- 这里使用了一张背景,注释掉了。 --> 热门动漫投票 猫和老鼠

2016-04-05 22:02:12 33179 8

原创 分布式计算——Daytime协议的实现(TCP版)

分布式计算课程的第一个作业是写Daytime协议。问:什么是Daytime协议?答:Daytime是一个有用的调试和测量工具。无论输入请求是什么,daytime只是简单地以字符串形式返回当前的日期和时间。问:Daytime协议返回格式是?答:Daytime服务没有特别的语法。建议使用Ascii可打印字符,空格、回车和换行。Daytime限制在一行。语法如下:Weekday,

2016-04-05 12:27:28 2831

原创 分布式计算——远程对象和远程方法的调用

分布式计算中有个远程方法的调用,在此基础上有个作业是在调用的远程方法中传递两个参数,一个参数是本地对象,一个参数是远程对象。下面就对这次的作业结果进行整理。作业的要求如下:Java RMI远程方法调用实验:若一个方法是远程调用,其参数一是本地对象、参数二是远程对象,请实现程序,在三台计算机上执行该程序,观察实验现象,报告实验结果。作业要求图:============

2016-04-04 23:23:26 3102

原创 变形的合并排序

算法要求:输入一串数字(int),保存到数组中。扫描一遍数组获取到已经排好序的数字序列。然后将第一个和第二个已经排好序的序列进行排序,将第三个和第四个进行排序,依次类推。第一遍排完后,按照上面那个样子,继续排序。直到排好序。好像称之为合并排序的变形。代码使用Java写的。代码并不好看,因为技术的原因,用了很多的控制变量,导致程序的阅读比较难受。第一次写这种算法程

2016-03-25 21:22:41 298

原创 OJ学习笔记5

OJ项目做完后,我会整理两三个内容,将整个项目的构架和代码,文档,还有学习过程进行整理写出。最近一直在研究OJ,将代码一句句的过,然后整理自己需要的代码,前半部分的judged文件已经整理的差不多了,今天开始测试。测试过程中遇到了下面的一些问题。-----------2月21日问题记录---------------------------------------------

2016-02-22 09:09:13 440

原创 研一寒假Docker学习笔记2

如果想把OJ和docker结合起来,我觉得无论是把编译运行放在容器里面,还是只把运行放在容器里面,首先都得用程序来把容器启动起来,运行结束反馈结果后,容器关闭。先不论这个相应的镜像怎么创建,以及不论容器怎么从服务器中取程序或者可执行文件,首先,我觉得我首先得解决用程序来生成一个容器,当然是任意一个镜像的容器。这里我选择的程序是C程序,因为docker暂时只是和linux相处

2016-01-18 08:57:11 433

原创 回归基础之C语言程序2(getcwd() 和 chdir())

/** 测试一下两个函数* 1.getcwd()* 2.chidir()* 一个是获取当前进程工作路径,* 一个是改变当前路径,注意这个路径必须是存在的,* 如果不存在,那么就会失败,返回值会为负值。*/#include #include int main(int argc, char ** argv){ char newdir[] = "/home/wmn/test"

2016-01-16 08:33:53 573

原创 回归基础之C语言程序1

/** 主要是下面的新的赋值方法* 以前没有见过这种,就尝试一下* 可以看到,numtest1和numtest2只能是1或者0.*/#include #include int main(int argc, char ** argv){ int numtest1 = (argc > 2); int numtest2 = (argc <= 2); printf(" numt

2016-01-15 10:54:04 302

原创 看完linux课本第五章后的一点总结,顺便做个报告。

第五章讲的是linux的中断机制,接下来我想从这么几个方面来说说我看到的linux中断机制:一:中断的类型和一些中断相关的知识二:中断处理过程三:关于中断的几个重要的函数分析接下来开始:一、中断的类型简介1.        首先简单说一下中断有哪几个类型:           中断给人的感觉就是由外部设备所引起的,比如由打印机,键盘,鼠标等。然而这些由外部设

2015-12-14 21:08:49 466

原创 针对linux课本的一个程序,反映出来的问题(留有问题没解决)

下面的代码是linux课本上的一段代码,主要就是看一下,每一个进程分配的3G虚拟内存中的,不同区间是怎么存储的。这些区间包含:栈区间,堆区间,代码区,BSS区,数据区。代码如下:/**这段代码留了两个问题没有解决。*****/#include #include #include int bss_var;int data_var0 = 0;int

2015-10-30 10:21:54 375

原创 Java的一个小程序

帮李鑫改的一个小的java程序,一百来行,大概就是一个窗口,来实现智能对话什么的。在这里记录一下而已,就不贴程序运行图了。也没有添加注释什么的,因为都是一些简单的swing包的东西。代码如下:import javax.swing.*;import java.awt.*;import java.awt.event.*;class TalkBrower extends

2015-10-28 21:36:35 309

原创 看完了linux书第二章后,关于内存寻址的一点总结

自己的总结,也就是自己的一些理解,纯手打,会出错,当然我自己理解的有些可能就是错的,这里只是暂时的记一下,如果以后发现什么错误的话,再回来改下。这里说的是80x86系列的CPU。几个概念:段是什么:程序猿在开发程序的时候,不会注意真实的电脑的内存是多大,他只是开发自己的,哪怕最后开发出来的东西会占用10G的内存,他都不管,也真是任性(也不是真的不管)。为

2015-10-27 19:47:03 557 1

原创 docker学习笔记1

1、今天算是正式的学习docker的相关东西,看了下书,其实昨天还在网上看了看。2、怎么说呢,云里雾里的,然后今天看着书,看着网上的教程去安装docker,安装还算顺利吧,弄了半天最后算是安装好了。3、然后想下载个镜像试试,尼玛,非要翻墙才能下载一些破镜像,弄了一晚上到现在,屁都没弄好,贼贼贼。4.、休息一会再看下,这两天会一直弄这个,然后一直更这个方面的学习笔记。法克。

2015-10-23 22:24:25 247

原创 linux课本第81页的程序

程序功能是在用户态下执行命令的一个实例程序。父进程打印控制菜单,并且接收命令。子进程去根据命令处理任务。父进程继续打印菜单并接收命令。源码如下:#include #include #include #include #include #include int main(int argc, char **argv){ pid_t pid; ch

2015-10-17 12:36:33 350

原创 关于在linux下用c连接数据库的一个小试验

尝试照猫画虎的试验写了一下c连接数据库的操作,经过调试,最后略有感觉,在这里记录一下。首先需要粘两段代码,第一段代码是源码,第二段代码是编译的时候需要用的Makefile文件内容。第一段:/******************************************* 程序名:DatabaseTest.cc* 功能 :用c链接数据库小实验* 时间 :2

2015-10-16 22:41:03 313

原创 关于写个内核模块打印进程链表的一些信息的程序

/****************************************** 函数名:TaskTest.c* 功能 :尝试写下linux书上遍历进程的程序* 时间 :2015/10/14******************************************/#include //任何模块编程都要包含这个头文件#include //包含了常用的内

2015-10-14 16:28:01 1534

原创 数据库基础

1、查看windows系统已经启动的服务:net start。2、dos命令打开和关闭mysql服务:net start mysql;net stop mysql。3、创建数据库命令:create dababase database_name;database_name 表示需要创建的数据库名,数据库名不能重复;其命名格式与很多命名规则是相同的,脑子正常的人都不会出

2015-10-09 12:34:45 375

原创 关于ftruncate()

函数功能:改变文件大小相关函数:open、truncate表头文件:#include 函数原型:int ftruncate(int fd, off_t length)函数说明:ftruncate()会将参数fd指定的文件大小改为参数length指定的大小。参数fd为已打开的文件描述词,而且必须是以写入模式打开的文件。如果原来的文件件大小比参数length大,则超过的部分会被删去

2015-10-06 20:56:21 727

原创 关于mysql_affected_rows()

mysql_affected_rows() 函数返回前一次 MySQL 操作所影响的记录行数。执行成功则返回受影响的行的数。如果上一次查询失败的话,函数返回 -1。如果上一次操作是没有任何条件(WHERE)的 DELETE 查询,在表中所有的记录都会被删除,但本函数返回值在 4.1.2 版之前都为 0。当使用 UPDATE 查询,MySQL 不会将原

2015-10-06 20:54:55 2316

原创 关于线程操作的waitpid()

waitpid系统调用,在Linux函数库中的原型是:#include  #include pid_t waitpid(pid_t pid,int *status,int options)waitpid()会暂时停止目前进程的执行,直到有信号来到或子进程结束。如果在调用 waitpid()时子进程已经结束,则 waitpid()会立即返回子进程结束状

2015-10-06 20:52:24 1020

原创 关于用C操作mysql的一些函数介绍

1.连接数据库。   从C语言连接MySQL数据库包含两个步骤:    a)初始化连接句柄结构;    b)实际创建连接。关于a):首先使用mysql_init初始化连接句柄:        MYSQL * mysql_init (MYSQL *);     通常传递一个空指针给mysql_init这个函数,它会返回一个指向新分配的连接句柄结构的指针。如果传递一

2015-10-06 20:49:32 533

原创 Ubuntu下如何找回 /var/log/messages

学习linux内核编程入门的时候,需要在系统的log/messages下查看自己编译的内核模块的运行情况。这个时候发现Ubuntu下并没有这个文件。然后从网上找了下 ,原来是默认配置的问题 ,所以这块就把修改关于这个问题的默认配置的方法放在这。1、打开 /etc/rsyslog.d/50-default.conf 配置文件。命令:sudo vim /etc/rsyslog.

2015-10-06 17:02:00 2029

原创 OJ学习笔记4

经过三天的奋战,把core下的judged.cc这个部分看完了,在电脑上,在纸上做了很多笔记,明天会抽空写一个笔记总结,供以后阅读。这个部分再花明天一天时间把顺一下,总结一下笔记什么的,处理一下遗留的一些小问题,就ok了。虽然只有不到600行的代码,但是花了足足三天才搞完,也是醉了,看别人的代码确实不怎么好受,以后还是自己多敲敲代码比较好。接下来会去看下ju

2015-10-05 23:34:25 346

原创 OJ学习笔记3

一直在上课,所以也没有什么时间来看这个项目,明天就是十月一假期了,不准备回家了,准备呆在宿舍好好研究一下这个。刚才把项目跑起来,然后自己试了一下,并没有想象中的那么好,操作有些繁琐什么的,毕竟是测试版,所以不要求多好,总比我自己做起来的好太多。今天就大概制定一下OJ的学习计划:1、明天看数据库的设计,弄懂各个表和各个字段的含义;2、后天看配置文件的定义及其管理的东西

2015-09-29 23:11:56 323

原创 OJ学习笔记2

1、晚上八点的时候把项目运行起来了;2、之前没有运行起来是因为自动安装过程中有个路径没有建立,然后并没有把项目写进apache的默认读取目录里面,所以一直404;3、学会了一些apache的配置,和一些linux命令,这个算是比较大的收获。4、接下来就是根据项目表现出来的东西来研究内部的运行机制,好好读源码吧;5、源码使用C++写的,所以还得学习一下C++,罢了,慢慢来么。6、

2015-09-28 00:39:20 354

原创 OJ学习笔记1

1、老师给的OJ项目是运行在linux下,于是选择了Ubuntu作为运行环境,版本问题不说。2、经过在Ubuntu下翻墙失败,和虚拟机共享主机网络失败后,终于能够静下来好好阅读源码了。3、今天就是第一天,用来手动安装项目运行环境,让项目先跑起来,这就是今天的唯一任务了。4、数据库Mysql,服务器apache,浏览器Firefox。5、OK,基本说完了,等项目跑起来后,再来说下。

2015-09-27 10:43:22 308

原创 关于用了一天时间在虚拟机下共享网络的问题说明

1、首先声明,并没有成功,就如同上次翻墙一样,并没有成功;2、几乎把能百度到的方法都试了一遍,还是不行,最终总结原因为,连网客户端的问题,就是那个锐捷的问题;3、认识的人出了现在的同学外,以前玩过linux的,都说是直接就有网,不用设置什么,结果我这边再怎么调都不行,最终放弃;4、感谢小鸟同学,费了很久的时间,虽然最终没有弄好,但是感谢,欠他一顿饭,下次见面了请他吃饭吧。5、对了虚

2015-09-27 10:34:42 357

原创 关于弄了一晚上linux到现在的一些事情。

1、给linux下安装迅捷的客户端,尝试很多次,最终成功;2、更改linux下汉语输入法,尝试很多次,最终成功;3、因为时间太晚,舍友都睡了,敲键盘声音太大,所以暂不更新,明天补上。-------------------------------------------------------------------------------------------------------

2015-09-24 01:45:04 375

原创 重启学校项目第一步。

开学两周了,老师发布了任务,让我看一下ACM的那个判定引擎,因为到时候网站的试题判定可能需要这个来完成。首先找到了关于OJ(online judge)的一个开源项目,项目是发布在linux系统下的,大概看了下,要是只看源码的话,肯定是很吃力的,需要把整个项目部署一下,然后一点点的去挖掘,挺不容易的,但是慢慢来吧。学校的网下载这个源码18兆需要半个小时,等下载好了先大概浏

2015-09-22 22:25:58 313

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除