自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

This is bill的专属博客

blog做为个人笔记使用,转载如果未贴地址,原作者看到可以联系我,我会将您的地址附上

  • 博客(59)
  • 资源 (15)
  • 问答 (1)
  • 收藏
  • 关注

原创 C/C++超级大火锅

写在前面最近接触到一些基础知识,平时遇到的编程困惑也加入其中。准确说是写给自己看的,但是如果大家可以借鉴就更好。多数是c/c++,也有少量java基础和其他知识,貌似应该叫《计算机基础问题汇总》比较好。不断更新~~一、new 跟 malloc 的区别是什么?1.malloc/free是C/C++语言的标准库函数,new/delete是C++的运算符2.new能够自动分配空间大小3.对于用户自定义的对

2016-03-15 17:06:46 8625 3

原创 二分查找【模板】

一、递归版本//有序数组递减排列int binarySearchRecusion(int* array,int len,int value){ if(len==0) return -1; int mid=(len-1)/2; if(array[mid]==value) return mid; if(array[mid]>value)

2016-03-26 17:33:56 1404

原创 协程

一、概念协程,又称微线程,纤程。英文名Coroutine。协程的概念很早就提出来了,但直到最近几年才在某些语言(如Lua)中得到广泛应用。子程序,或者称为函数,在所有语言中都是层级调用,比如A调用B,B在执行过程中又调用了C,C执行完毕返回,B执行完毕返回,最后是A执行完毕。所以子程序调用是通过栈实现的,一个线程只能在某一时刻执行一个子程序。子程序调用总是一个入口,一次返回,调用顺序是明确的。而协程

2016-03-26 15:30:48 1910

原创 C++之:类对象内存对齐

一、关于空间的思考一个Class对象需要占用多大的内存空间。最权威的结论是: *非静态成员变量总合。(not static) *加上编译器为了CPU计算,作出的数据对齐处理。(c语言中面试中经常会碰到内存对齐的问题) *加上为了支持虚函数(virtual function),产生的额外负担。二、例程//注:以下注释是在mac os g++ 环境编译:g++ memAlign

2016-03-26 09:55:02 1671

原创 C++之:虚函数表

一、文章来由虚函数表究竟存放在哪里?二、概念C++中的虚函数的作用主要是实现了多态的机制。关于多态,简而言之就是用父类型别的指针指向其子类的实例,然后通过父类的指针调用实际子类的成员函数。这种技术可以让父类的指针有“多种形态”,这是一种泛型技术。所谓泛型技术,说白了就是试图使用不变的代码来实现可变的算法。比如:模板技术,RTTI技术,虚函数技术,要么是试图做到在编译时决议,要么试图做到运行时决议。对

2016-03-25 11:27:08 1517 1

原创 C++之:引用

一、概念 某一变量(目标)的一个别名,对引用的操作与对变量直接操作完全一样。引用的声明方法:类型标识符 &引用名=目标变量名;二、引用的注意点  (1)&在此不是求地址运算符,而是起标识作用。  (2)类型标识符是指目标变量的类型。  (3)声明引用时,必须同时对其进行初始化。  (4)引用声明完毕后,相当于目标变量有两个名称即该目标原名称和引用名,且不能再把该引用名作为其他变量名的别名。

2016-03-25 00:52:33 1111 1

原创 两个栈实现一个队列

一、题目用C++描述,题目大致是这样的:已知下面Stack类及其3个方法Push、Pop和 Count,请用2个Stack实现Queue类的入队(Enqueue)出队(Dequeue)方法。class Stack{…public: void Push(int x); // Push an element in stack; int Pop(); // Po

2016-03-24 15:45:35 883 1

原创 C++之:模板元编程(三) 默认模板参数

一、类模板的默认模板参数原则  1、可以为类模板的类型形参提供默认值,但不能为函数模板的类型形参提供默认值。函数模板和类模板都可以为模板的非类型形参提供默认值。  2、类模板的类型形参默认值形式为:template<class T1, class T2=int> class A{};为第二个模板类型形参T2提供int型的默认值。  3、类模板类型形参默认值和函数的默认参数一样,如果有多个类型形参则从

2016-03-24 14:49:25 5688 2

原创 根据先序中序遍历建树【模板】

主要就是通过先序找到当前子树根节点,再用中序遍历分子树,不断递归下去。#include <iostream>#include <stdio.h>#include <cstring>#include <vector>#include <cmath>#include <algorithm>#include <set>#include <cassert>#include <time.h>

2016-03-24 10:37:15 2997

原创 TCP中的三次握手和四次挥手

一、文章来由三次握手只记得ack、ack+1这些零碎片段了~~~特此总结二、总图明显三次握手是建立连接,四次挥手是断开连接,总图如下:三、握手 (1)首先,Client端发送连接请求报文(SYN=1,seq=client_isn) (2)Server段接受连接后回复ACK报文,并为这次连接分配资源。(SYN=1,seq=client_isn,ack = client_isn+1)

2016-03-23 23:03:44 1427 2

原创 C++高级进阶 第四季:const详解(二) 常量折叠

一、文章来由const详解之二二、const 代替 #defineconst最初动机就是代替 #define。const 优于 #define: (1) #define没有类型检查,const在编译期(而不是预编译期)做类型检查;(2)const方便调试和定位bug。所以应该完全用const代替#define三、头文件中的const (1)要使用const代替#define,同样需要把cons

2016-03-23 00:03:05 2580 1

原创 快速排序【模板】

一、递归版本#include <iostream>#include <stdio.h>#include <cstring>#include <vector>#include <cmath>#include <algorithm>#include <set>#include <cassert>#include <time.h>#include <queue>#include <ma

2016-03-22 07:35:33 4427 1

转载 A题常用数据结构

基本结构高级结构题单集合结构 幷查集POJ 1182POJ 1308POJ 1611POJ 1986POJ 1988线性结构数组栈队列双端队列POJPOJPOJPOJPOJ树状结构二叉树BST

2016-03-21 15:01:15 1134

原创 FC金手指使用方法+大全

一、文章来由童年~~小时候除了小霸王FC主机,然后就是世嘉MD主机,玩的好多啊,但有些游戏一直没打穿留下遗憾。网上找金手指使用方法,都真真假假,鱼龙混杂,试了很多终于得其精要,于是有了这篇文章二、金手指使用方法已坦克大战为例:0051-01-64 P1生命 0052-01-64 P2生命 00A8-01-60 P1 Power-Up 00A9-01-60 P2 Power-Up 0045

2016-03-21 10:20:04 52213 5

原创 poj 2623 快排

一、直接用sort会超时跪掉。#include <iostream>#include <stdio.h>#include <cstring>#include <vector>#include <cmath>#include <algorithm>#include <set>#include <cassert>#include <time.h>#include <queue>#in

2016-03-21 04:05:54 1167 1

转载 __int64与long long

//为了和DSP兼容,TSint64和TUint64设置成TSint40和TUint40一样的数  //结果VC中还是认为是32位的,显然不合适  //typedef signed long int     TSint64;  //typedef unsigned long int   TUint64;    //ANSI C中规定long long才能表示64位  //参

2016-03-21 03:49:50 1408

转载 转载:2016.3.15 回忆录

问题一: 初次见面,先手写一段二分查找的算法吧,假定数组是由大到小排序的! 答: 二分查找,别名折半查找。其思想很简单,标准写法如下://有序数组递减排列int binarySearch(int* array,int len,int value){ int mid=0; int low=0; int high=len-1; while(low<=hig

2016-03-20 19:54:25 836

原创 Floyd算法思想

本来代码量如此小的算法不用出模板了,但是的确思想还是很好的。1.定义概览Floyd-Warshall算法(Floyd-Warshall algorithm)是解决任意两点间的最短路径的一种算法,可以正确处理有向图或负权的最短路径问题,同时也被用于计算有向图的传递闭包。Floyd-Warshall算法的时间复杂度为O(N3),空间复杂度为O(N2)。 2.

2016-03-20 19:34:05 7674 1

原创 Dijkstra算法【模板】

1.定义概览Dijkstra(迪杰斯特拉)算法是典型的单源最短路径算法,用于计算一个节点到其他所有节点的最短路径。主要特点是以起始点为中心向外层层扩展,直到扩展到终点为止。Dijkstra算法是很有代表性的最短路径算法,在很多专业课程中都作为基本内容有详细的介绍,如数据结构,图论,运筹学等等。注意该算法要求图中不存在负权边。问题描述:在无向图 G=(V,E) 中,假设每条边 E[i

2016-03-20 19:32:25 2670

转载 GDB单步调试基础

最近全面换成 Linux 平台了,感觉如果不玩游戏 Linux 桌面基本可以替代 Windows 了,但是调试器这个还是问题,gdb可以解决这个问题。一、GDB 概述GDB 是 GNU 开源组织发布的一个强大的 UNIX 下的程序调试工具。或许,各位比较喜欢那种图形界面方式的,像 VC 、 BCB 等 IDE 的调试,但如果你是在 UNIX 平台下做软件,你会发现

2016-03-20 18:12:00 1113

原创 poj 1502 单源最短路径

一、题目大意无向图,给出邻接矩阵的下半矩阵,要求源点1,到其他点最短时间(散播整个网络的最短时间)。二、AC code明显的单源最短路径但是还是用了Floyd算法撞撞运气,毕竟是无向图,当然可以对Floyd优化,最后也可以A。#include <iostream>#include <stdio.h>#include <cstring>#include <vector>#include <cm

2016-03-20 18:01:50 1128 1

原创 一道取球概率题

一、题目二、分析如果撇开概率论的公式,此题也是可以做出来的。分子:(从黑袋取球)*(3红7蓝取6红4蓝)分母:(从白袋取球)(7红3蓝取6红4蓝)+(从黑袋取球)(3红7蓝取6红4蓝)如果要用到概率论,见下图

2016-03-20 16:18:21 3323

转载 POJ 最短路问题题号汇总

求最短路基本的算法:1>Dijkstra算法2>Bellman-Ford算法3>Floyd算法4>Floyd-Warshall算法5>Johnson算法6>A*算法题目:1.poj1062 昂贵的聘礼(中等)    此题是个经典题目;用Dijkstra即可;但是其中的等级处理需要一定的技巧;   要理解好那个等级制度;这个处理好,基本

2016-03-20 11:38:59 1303

原创 poj 1125 Floyd算法

一、题目大意可以说理解题目比解题难~~我用的Floyd,Floyd也可以算是dp的一种。题目可能有多组测试数据,每个测试数据的第一行为经纪人数量N(当N=0时,输入数据结束),然后接下来N行描述第i(1<=i<=N)个经纪人与其他经纪人的关系。每行开头数字M为该行对应的经纪人有多少个经纪人朋友(该节点的出度,可以为0),然后紧接着M对整数,每对整数表示成a,b,则表明该经纪人向第a个经纪人传递信息需

2016-03-20 11:34:21 796 1

转载 poj 题型分类

主流算法: 1.搜索 //回溯 2.DP(动态规划)  3.贪心  4.图论 //Dijkstra、最小生成树、网络流 5.数论 //解模线性方程 6.计算几何 //凸壳、同等安置矩形的并的面积与周长 7.组合数学 //Polya定理 8.模拟  9.数据

2016-03-20 10:11:15 928

原创 poj 1083

一、题目大意一层里面有400个房间,北边和南边各有200个房间,要从一个房间里面把一张桌子移动到另一个房间(特别注意有可能有s比t大的情况,我因为这个WA了一次),需要占用这两个房间之间的所有走廊(包括这两个房间前面的),每移动一个桌子需要10分钟,给出需要移动的桌子的数据(从哪移动到哪),要求计算出最少需要多少分钟才能把所有桌子移动完。另外注意: 房间1和2前面是同一个走廊,所以从1移动到2只

2016-03-19 21:26:22 756 1

转载 vim操作一览

一、安装 vim 控制台版本的vim随ubuntu一起发行,因此没必要安装. 然而,如果您更喜欢GUI界面下的vim的话,请安装vim-gtk软件包,有以下两种方法:1、在Ubuntu Software Center中搜索vim-gtk,并安装 Vi IMproved - enhanced vi editor - with GTK2 GUI2、在终端中输入       su

2016-03-19 18:31:45 634

原创 题三 画线

#include <iostream>#include <stdio.h>#include <cstring>#include <vector>#include <cmath>#include <algorithm>#include <set>#include <cassert>#include <time.h>#include <queue>#include <map>#in

2016-03-19 14:39:34 718

原创 题一 电子数字

一、题目时间限制:10000ms 单点时限:1000ms 内存限制:256MB描述电子数字在生活中很常见,而许多的电子数字是由LED数码管制作而成。数字LED数码管一般由7个发光二极管封装在一起,组成’8’字型,引线在内部连接完成。如下图所示,我们可以对每个发光管进行编码从1到7。而数字0到数字9可以由这七根发光管的亮暗来表示。对LED数码管的二极管进行编码用LED数码管表示数字0-9假设我们现

2016-03-19 14:35:48 1580 1

原创 题二 源代码编译:拓扑排序

一、题目时间限制:10000ms 单点时限:1000ms 内存限制:256MB 描述 在网易游戏的日常工作中,C++ 是一门常用的语言。面对众多的 C++ 代码,等待源文件编译的漫长时间是个令人糟心的时刻,一直以来大家对此怨声载道。终于有一天,大家找到了你,一位优秀的程序员,请你来帮忙分析一下编译速度的瓶颈。经过一番调查和研究,你发现一些源代码之间是有依赖关系的。例如,某个源文件 a.cpp

2016-03-19 11:42:08 1097 1

原创 poj 1050 最大子矩阵和

一、思路最大子矩阵和的方法和最大字段和一样先单独对每行求最大字段和(此时,子矩阵的行为1,就是最大字段和了)然后,把第i行后的各行对应列的元素加到第i行的对应列元素,每加一行,就求一次最大字段和,这样就把子矩阵的多行压缩为一行了,一行了就是最大字段和了也可以这样理解:a11 a12 a13 a21 a22 a23 a31 a32 a33如图,先求第一行最大子段和,再求第一行跟第二行合

2016-03-18 18:31:24 884

转载 POJ 动态规划题目列表

声明:1.这份列表当然不是我原创的,从文库里下载了一份,放到这里便于自己浏览和查找题目。※最近更新:Poj斜率优化题目1180,2018,3709 列表一:经典题目题号:容易: 1018, 1050, 1083, 1088, 1125, 1143, 1157, 1163, 1178, 1179, 1189, 1191,1208, 1276, 1322

2016-03-18 15:43:16 1141

原创 poj 1018 dp

一、题目大意一个系统由n个设备组成,每个设备可以由mi个厂商提供,每个设备你可以选一个厂商,在你选定的厂商的设备中,b(带宽)是所选设备中b值最小的,类似于短板效应,p是所有价格之和,要求b/p最小。题目给出的用例是:1 3 3 100 25 150 35 80 25 2 120 80 155 40 2 100 100 120 110这样说,应该是150 35 155 40 120 110

2016-03-18 15:09:11 860

转载 【DP专辑】ACM动态规划总结

转载请注明出处,谢谢。   http://blog.csdn.net/cc_again?viewmode=list          ----------  Accagain  2014年5月15日动态规划一直是ACM竞赛中的重点,同时又是难点,因为该算法时间效率高,代码量少,多元性强,主要考察思维能力、建模抽象能力、灵活度。本人动态规划博客地址:http://blog.csd

2016-03-18 11:10:12 6936 1

转载 ubuntu卸载程序

方法 1: 使用Synaptic软件包管理器进行卸载1打开软件包管理器。Ubuntu自带了一个GUI(Graphical User Interface,图形化用户界面)软件包管理器,它可以让你在一个可视化窗口中卸载程序。如果你不习惯使用命令行,这一工具将非常有用。点击系统,然后选择管理。在管理菜单中,选择Synaptic软件包管理器。某些较新版本的Ubunt

2016-03-17 22:01:29 1035

原创 C++之:模板元编程(二) 模板形参

一、模板的形参 有三种类型的模板形参:类型形参,非类型形参和模板形参。1、类型形参1.1 、类型模板形参类型形参由关见字class或typename后接说明符构成,如template void h(T a){};其中T就是一个类型形参,类型形参的名字由用户自已确定。模板形参表示的是一个未知的类型。模板类型形参可作为类型说明符用在模板中的任何地方,与内置类型说明符或类类型说明符的使用方式完全相同

2016-03-16 23:16:44 2498

原创 C++之:模板元编程(一)

一、概念 利用模板特化机制实现编译期条件选择结构,利用递归模板实现编译期循环结构,模板元程序则由编译器在编译期解释执行。template<class 模板参数表>class 类名{// 类定义......};其中,template 是声明类模板的关键字,表示声明一个模板,模板参数可以是一个,也可以是多个,可以是类型参数 ,也可以是非类型参数。类型参数由关键字 class或typename

2016-03-15 20:12:14 2646

原创 用2个队列实现栈操作

一、文章来由一道面试题,别说以前还真没好好想过,在未参考其他资料情况下自己想了两种,实现如下,如果另有高招,之后再补。二、2种实现方式分析:栈操作其实只有 push 和 pop 对栈内元素进行改变,我于是想从其一下手即可。改变 push 操作:比如输入,1 2 3 4 5,栈中结构应该是1在底,5在顶,但是队中元素是原顺序,如果要让push一个元素,让队列中的顺序反过来,就可以每推入一个元素,就用另

2016-03-15 19:22:05 985

转载 优化神器 beamoff

http://files.cnblogs.com/files/yipu/beamoff.zip csdn上有下载:http://download.csdn.net/download/bytige/8371825这个程序设置为登录启动比较好 源码很简单://// AppDelegate.m// beamoff//// Created by ANDREI VAYAVODA on 09

2016-03-14 09:31:26 15446 1

原创 关于main参数 *argv[] 指向空间放在哪的疑问

一、问题来由由以上疑问,演化成了“只在编译期确定的空间才会分配在栈上”的疑问,因为上面 argv 指向明显是编译期确定不了的,那会放在堆上吗?二、讨论在书上找到如下段落: (1)栈内存用来保存定义在函数内的非static对象; (2)静态内存用来保存局部static对象、类static数据成员以及定义在任何函数体职位的变量。通过以上段落,可以得到如下结论: main参数 *arg

2016-03-13 11:17:42 1642

趣配音简易Java网络爬虫 2.0版

趣配音简易Java网络爬虫 2.0版,修复了之前的一些小bug

2015-08-07

简易Java网络爬虫

简易Java网络爬虫,爬虫的目标是趣配音的web页面

2015-08-07

【免费】很小的UML画类图工具很好用

这是一个很好用的画类图的工具,对于学生来说很是好用,小而且很方便,画好类图后海可以直接转换为图片,当然,如果要转换为代码的话需要装插件,不过要是你需要转换成代码的话,不建议使用这个,用些visio之类的还行,然而作为画类图的工具,个人认为是我用到的最方便的,而且很小,也不需要安装

2015-08-03

画UML的超小好用工具 violet 免费下载

画UML的超小好用工具 violet 免费下载,网上有5分下载,但是我觉得好东西应该免费共享,下这个吧

2015-08-02

struts2+myeclipse 入门级例程

struts2+myeclipse 入门级例程 非常适合初学者学习struts

2014-03-31

《算法导论原书第3版》(高清正宗中文版).pdf

网上看到很多第三版的打着中文版的旗号,下载了却是英文原版,很坑爹(笔者中过很多枪,终于找到这一版,很清晰),为了改变这个现象,我把找到的中文版放上来,分数也比较中肯,大家多多下载支持支持我!!

2013-10-06

8051系列单片机C程序设计完全手册 part4

因为CSDN有大小限制,我把他分成几部分,大家可以通过评论返回分数

2013-02-03

8051系列单片机C程序设计完全手册 part3

因为CSDN有大小限制,我把他分成几部分,大家可以通过评论返回分数

2013-02-03

8051系列单片机C程序设计完全手册 part7

因为CSDN有大小限制,我把他分成几部分,大家可以通过评论返回分数

2013-02-03

8051系列单片机C程序设计完全手册 part6

因为CSDN有大小限制,我把他分成几部分,大家可以通过评论返回分数

2013-02-03

8051系列单片机C程序设计完全手册 part5

因为CSDN有大小限制,我把他分成几部分,大家可以通过评论返回分数

2013-02-03

8051系列单片机C程序设计完全手册 part

因为CSDN有大小限制,我把他分成几部分,大家可以通过评论返回分数

2013-02-03

8051系列单片机C程序设计完全手册 part2

因为CSDN有大小限制,我把他分成几部分,大家可以通过评论返回分数

2013-02-03

8051系列单片机C程序设计完全手册 part1

大家可以通过评论获得返还分数,由于CSDN的限制我把他分成了7分

2013-02-03

8051系列单片机C程序设计完全手册 清晰版.pdf

大家下载的分数(1分)可以通过评论来返还

2013-02-03

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

TA关注的人

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