博文
朋友(2008-05-24 17:18:00)
摘要:假如我有100万个朋友,我向他们每人要一枚硬币,便会成为富翁。 假如我有50万个朋友,我会要他们每个人手和手相牵,这样,我们社会就会变得更力和谐。 假如我有20万个朋友,我们全住在一座城市里,那么,城市将充满欢声笑语。 假如我有2万个朋友,每次我过生日,电话局非把我家的电话线掐掉。 假如我有1000个朋友,在遇到困难时,就会1000个人向我伸出援助之手。 假如我有100个朋友,我身边,就会有100位人生导师。 假如我有10个朋友,我的母亲就会再多10个孩子。 假如我有两个朋友,我就会感到幸福和快乐。 但是,假如我只有你这一个朋友,我想我不需要更多的了,对我来说,你一个人就胜过100万个,我需要你, 我也会珍惜你!......
整理.net快捷键如下(2008-05-12 15:14:00)
摘要:整理.net快捷键如下
代码浏览和操作:Ctrl+F3:搜索光标所在处的词(不一定要选中) F3:搜索下一个Ctrl+'-'(Ctrl+Shift+'-'):跳动你目前位置的上(下)一个位置(这些位置都是你曾经工作过的地方)Ctrl+F2或者Ctrl+K,Ctrl+K:开/关书签BookmarkF2或者Ctrl+K,Ctrl+N:下一个书签Shift+F2或者Ctrl+K,Ctrl+P:上一个书签Ctrl+K,Ctrl+L:清除所有书签Alt+F6:切换到下一个可显示的面板,并自动的从一个Tab跳到另一个TabCtrl+'[':匹配 {} ,() 等成对标示符号。如果同时按住Shift,会选中{}, ()之间的文字。F12:跳动函数或当前标示的定义,相当于上述菜单中的Go to DefinitionAlt+O:在相应的.h和.cpp文件之间切换Ctrl+G:快速跳动代码编辑器某行编译和调试:F7:Build整个SolutioonCtrl+F7:编译单独Cpp文件Ctrl+F5:不带调试地运行程序F5:带调试的运行程序 Shift+F5:终止调试F9:在光标所在行添加断点Ctrl+Shift+F9:清除所有断点F8:在编译错误View进行导航上一个或下一个F10:单步调试-不进入函数 F11:单步调试-进入函数杂项:Ctrl+Shift+V:剪贴板循环粘贴Cycle Clipboard Ring (VS会记住若干个Copy记录。比如说你可以试着选择不同的文本块然后按Ctrl+C进行Copy,然后在按住Ctrl和Shift的同时一下一下地按V,你发现其中的奥妙了吗?VS在循环你的Copy History。)Ctrl+K,Ctrl+C:对选中文字添加注释 Ctrl+K,Ctrl+U:取消注释Ctrl+K,Ctrl+F:对选中文字进行格式Format调整Alt+Shift+Enter:全屏Full ScreenCtrl+L或者Ctrl+Y:删除光标所在的整行......
必须掌握的八个【cmd 命令行】[转](2008-05-04 22:18:00)
摘要:一,ping 它是用来检查网络是否通畅或者网络连接速度的命令。作为一个生活在网络上的管理员或者黑客来说,ping命令是第一个必须掌握的DOS命令,它所利用的原理是这样的:网络上的机器都有唯一确定的IP地址,我们给目标IP地址发送一个数据包,对方就要返回一个同样大小的数据包,根据返回的数据包我们可以确定目标主机的存在,可以初步判断目标主机的操作系统等。下面就来看看它的一些常用的操作。先看看帮助吧,在DOS窗口中键入:ping /? 回车,。所示的帮助画面。在此,我们只掌握一些基本的很有用的参数就可以了(下同)。 -t 表示将不间断向目标IP发送数据包,直到我们强迫其停止。试想,如果你使用100M的宽带接入,而目标IP是56K的小猫,那么要不了多久,目标IP就因为承受不了这么多的数据而掉线,呵呵,一次攻击就这么简单的实现了。 -l 定义发送数据包的大小,默认为32字节,我们利用它可以最大定义到65500字节。结合上面介绍的-t参数一起使用,会有更好的效果哦。 -n 定义向目标IP发送数据包的次数,默认为3次。如果网络速度比较慢,3次对我们来说也浪费了不少时间,因为现在我们的目的仅仅是判断目标IP是否存在,那么就定义为一次吧。 说明一下,如果-t 参数和 -n参数一起使用,ping命令就以放在后面的参数为标准,比如"ping IP -t -n 3",虽然使用了-t参数,但并不是一直ping下去,而是只ping 3次。另外,ping命令不一定非得ping IP,也可以直接ping主机域名,这样就可以得到主机的IP。 下面我们举个例子来说明一下具体用法。 这里time=2表示从发出数据包到接受到返回数据包所用的时间是2秒,从这里可以判断网络连接速度的大小 。从TTL的返回值可以初步判断被ping主机的操作系统,之所以说"初步判断"是因为这个值是可以修改的。这里TTL=32表示操作系统可能是win98。 ......
汉语编程:令老美深感“来自中国的恐慌”(2008-04-29 19:35:00)
摘要:眼下,无论多么高级的黑客破密软件,也很难以英文破密的方式来破解中文加密程序,这对于国外的恶意破坏我国国家安全分子,也无疑筑起了一道“钢铁长城”, 想要进入“汉语编程”软件不懂汉语编程,就如同“盲人摸象”,即使将来外国人学了汉语编程,但因为所有源代码都掌握在中国人手里,也不过于担心计算机的安 全问题。正如来自美联社的报道中所言:汉语编程,令老美也深感“来自中国的恐慌”!据统计,在受“间谍软件”攻击的国家中,中国是最大的受害国之一,仅去年下半年,全球平均每天约有6.4万台计算机受到恶意程序影响,其中有26%在中国,这一比例高于其他任何国家。有资料显示,近年来,在世界上传播的杀伤力最大的病毒几乎都在中国肆虐过,日益突出的国防信息安全问题,早已引起全世界的普遍关注,解决好国防信息安全问题,必须要强化全民国防观念,走独立自主的创新发展道路。据汉语编程发明人沈志斌介绍:现代信息安全模式以由远端到近端逐级安全保护模式,其安繁琐性大其安全性提高幅度较小,而“汉语编程”从程序本身使信息安全方式发生改变,木马程序、僵尸网络、黑客攻击这一系列的网络安全问题都是在系统文件密码破解建立后门所完成的,想要根治这些信息安全隐患就要从“汉语编程”开始,因为“汉语编程”的底层是汉字,是以汉字及符号为编译语言基本字符单位,不依赖于任何一种编程语言,其软件加密方式以汉字独有的特点进行加密,虽然现在黑客活动猖獗,间谍软件盛行,但是面对全汉字编写的程序也只能望尘莫及,眼下,无论多么高级的黑客破密软件,也很难以英文破密的方式来破解中文加密程序,这对于国外的恶意破坏我国国家安全分子,也无疑筑起了一道“钢铁长城”,想要进入“汉语编程”软件不懂汉语编程,就如同“盲人摸象”,即使将来外国人学了汉语编程,但因为所有源代码都掌握在中国人手里,也不过于担心计算机的安全问题。正如来自美联社的报道中所言:汉语编程,令老美也深感“来自中国的恐慌”!有资料表明:汉语编程问世14年来,已经开发出160多种软件和200多种益智游戏,这些产品,到目前为止,尚没有受到任何一种病毒的入侵,也没有任何一种木马能够盗取资料,可以想象“汉语编程”在信息安全上所起的“革命”性作用。......
全面整理的C++面试题[转](2008-04-28 01:52:00)
摘要:1.是不是一个父类写了一个virtual 函数,如果子类覆盖它的函数不加virtual ,也能实现多态?
virtual修饰符会被隐形继承的。private 也被集成,只事派生类没有访问权限而已。virtual可加可不加。子类的空间里有父类的所有变量(static除外)。同一个函数只存在一个实体(inline除外)。子类覆盖它的函数不加virtual ,也能实现多态。在子类的空间里,有父类的私有变量。私有变量不能直接访问。
--------------------------------------------------------------------------2.输入一个字符串,将其逆序后输出。(使用C++,不建议用伪码)
#include <iostream>using namespace std;
void main(){ char a[50];memset(a,0,sizeof(a)); int i=0,j; char t; cin.getline(a,50,'\n'); for(i=0,j=strlen(a)-1;i<strlen(a)/2;i++,j--) { t=a[i]; a[i]=a[j]; a[j]=t; } cout<<a<<endl; }
//第二种
string str;cin>>str;str.replace;cout<<str;
--------------------------------------------------------------------------3.请简单描述Windows内存管理的方法。
内存管理是操作系统中的重要部分,两三句话恐怕谁也说不清楚吧~~我先说个大概,希望能够抛砖引玉吧
当程序运行时需要从内存中读出这段程序的代码。代码的位置必须在物理内存中才能被运行,由于现在的操作系统中有非常多的程序运行着,内存中不能够完全放下,所以引出了虚拟内存的概念。把哪些不常用的程序片断就放入虚拟内存,当需要用到它的......
无向图的最小支撑树Kruskal算法的实现(2008-04-28 01:26:00)
摘要:// 无向图的最小支撑树Kruskal算法的实现//主题: 用邻接表的方式实现最小支撑树Kruskal算法
//作者:Andyhou
//时间:2008年4月28日
//具体算法实现:// 采用的是最小堆的方式找最小边,用等价类的方式步步合并最小的边。// 程序中还声明了一个等价类。#include <iostream>using namespace std;
const int MaxNode=100;const int VISITED=1;const int UNVISITED=0;const int ROOT=-1;const int INFINITY=9999;
struct Node{ int adjvex; //终点顶点 int weight; //权 struct Node *next; //指向下个顶点的指针};class VNode{public: int data; struct Node* first; //指向第一个邻接顶点 VNode(){} VNode(int Data,struct Nod......
无向图的最小支撑树Prim算法的实现(2008-04-28 00:45:00)
摘要:// 无向图的最小支撑树Prim算法的实现//主题:实现最小支撑树的算法
//作者:Andyhou
//时间:2008年4月27日
//具体重要算法:// 采用了最小堆来实现取最小边,定义了一个边的类。// Prim算法的具体实现。// 顶点的存储都是从1开始。#include <iostream>using namespace std;
const int MaxNode=100;const int VISITED=1;const int UNVISITED=0;
struct Node{ int adjvex; //终点顶点 int weight; //权 struct Node *next; //指向下个顶点的指针};class VNode{public: int data; struct Node* first; &nb......
有向图的邻接表的建立和个类算法的实现(2008-04-26 15:58:00)
摘要:// 有向图的邻接表的建立和个类算法的实现//主题:用邻接表的方式实现有向图的一些算法
//作者:侯永华
//时间:2008年4月26日
//内容:具体实现:创建向图的邻接存储方式。打印邻接表的个顶点数据, //建立邻接表 void CreateAdj(); //打印邻接表 //void printAll(); //删除邻接表 //void Del(); //深度优先搜索 //void DFS(int V); //广度优先搜索 //void BFS(int V); //队列实现拓扑排序 //void TopSortQueue(); //递归的拓扑排序 //void TopSortbyDFS(); //void Do_topsort(int V,int *result,int &tag); //Dijkstra算法的实现 //void Dijkstra(int s); //Floyd算法的实现 //void Floyd(Dist** &D); //其中很多用到的辅助的类,堆的方式在程序中都写出来了。用到队列的才用的VC中自带的队列。//任务:测试所有数据的正确性。//注意:本程序没有采用头文件形式,所有的节点存储都是从1开始的。
#include <iostream>#include <queue>using namespace std;
const int MaxNode=100;const int VISITED=1;const int UNVISITED=0;con......
数据结构中的关于拉链的举例(2008-04-11 00:55:00)
摘要: 数据结构中的关于拉链的举例
作者:andyhou
这几天在复习数据结构没事编程练习写点东西。好久没动手有点生疏了。呵呵!!
在数据结构中有很多的地方都涉及都拉链来解决问题。虽然我们每个人对这个很熟悉。但是也有很多人看似觉得很简单。就是从一个数组中拉一条链出来存储一些数据,但是到了真正实现的时候却不知道怎么下手,似乎也觉得很麻烦,而且写出来的程序错误很多。对指针的控制也不知道怎么下手。我自己写的这个程序程序很多的需要拉链的地方都可以模仿的使用。
程序说明:这个程序是把所输入的数据的个位数都存放在一个基数相同位置拉出来的地方
并且对这些数据的查找和打印。程序很容易理解所以没有什么注释应该很
容易看懂。
#include <iostream>using namespace std;
const int r=10;//基数const int N=20; //设置数组长度
struct Node{ int element; Node *next;};
//初始化void Init(struct Node *Array,int r){ for(int i=0;i<r;i++) { Array[i].element=i; Array[i].next=NULL; }}
void Insert(struct Node *Array,int &item){ int R; struct Node *temp=new struct Node; struct Node *T; temp->element=item; R=item%10; if(Array[R].next==......
基于静态链的基数排序(C++)(2008-04-09 17:04:00)
摘要: 基于静态链的基数排序(C++)
基于链表的实现主要是将分配出来的子序列存放在r个(静态链组织的)队列中,在数组中设置next段。
#include <iostream>using namespace std;const int N=20;const int r=10;
//节点类class Node{public: int key; int next;};
//静态队列类class StaticQueue{public: int head; int tail;};
template <class Record>class LinkRadixSorter{private: void Distribute(Record *Array,int first,int i,int r,StaticQueue* queue); //分配过程 void Collect(Record* Array,int &first,int i,int r,StaticQueue* queue); //收集过程 void PrintArray(Record* A,int first); //输出序列public: void Sort(Record* Array,int n,int d,int r);};
template<class Record>void LinkRadixSorter<Record>::Sort(Record* Array,int n,int d,int r){ int first=0; StaticQueue* queue; queue=new StaticQueue[r]; for(int i=0;i<n;i++) Array[i].next=i+1;&nb......
