智慧的老鸟

一个程序员需要有一棵Gank的心,Dota能培养我。

  博客园 :: 首页 :: 博问 :: 闪存 :: 新随笔 :: 联系 :: 订阅 订阅 :: 管理 ::

2012年10月30日

摘要: 问题:set是一个自动有序的集合容器,这是set的一个最实惠的性质,从小到大,只要你插入进去,就有序了。但是,如果你不想要这个顺序呢,是不是可以人为控制set容器的元素顺序呢?答案是,可以的,因为stl也是程序员设计的。首先看stl的模板构造函数explicit set ( const Compare& comp = Compare(), const Allocator& = Allocator() );templateset ( InputIterator first, InputIterator last, const Compare& comp = Compare 阅读全文
posted @ 2012-10-30 08:14 智慧的老鸟 阅读(1264) 评论(0) 推荐(0) 编辑

2012年10月29日

摘要: 问题:stl中的vector容器常常造成删除假象,这对于c++程序员来说是极其讨厌的,《effective stl》大师已经将之列为第17条,使用交换技巧来修整过剩容量。内存空洞这个名词是网上的学者给出的,我觉得用来描述这个基本现象特别容易提醒自己vector删除的这个陷阱。首先给出一段代码:35 void testvector()36 {38 vector v;39 v.push_back(1);40 v.push_back(2);41 cout << "v size = " << v.size() << " v capaci 阅读全文
posted @ 2012-10-29 12:05 智慧的老鸟 阅读(6246) 评论(0) 推荐(0) 编辑

2012年10月26日

摘要: 对于求n 个实数构成的数组中最小元素的位置问题,写出你设计的具有减治思想算法的伪代码,确定其时间效率,并与该问题的蛮力算法相比较。#include#include#define len 10using namespace std;void creatArr(int arr[len])8{srand(time(NULL));for (int i=0;i{arr[i] = rand()%len;}}void printArr(int arr[len]){cout<<"数组为:"<<endl;for (int i=0;i{cout<<arr[i 阅读全文
posted @ 2012-10-26 16:29 智慧的老鸟 阅读(914) 评论(0) 推荐(0) 编辑

摘要: 游戏:有3个门,门后分别是car,sheep,只有一个门是car。一个猜想着随即选取一个门,如果这个门后面是车就可以获得车,否则获得羊。很显然这样猜对车的概率是1/3。但是现在的条件是有个主持人,她知道每个门后面是什么。当你选择一个门之后,她打开一个有羊的门。问你是否改变你原来的选择?坚持原来的选择的话获得车的概率是多少,改变原来的选择的话概率又为多少。请给出解释。答案是1/3变成2/3。概率能解释;编程更直观。 阅读全文
posted @ 2012-10-26 16:20 智慧的老鸟 阅读(851) 评论(0) 推荐(0) 编辑

摘要: 待证问题:二进制循环左移算法求约瑟夫问题的证明:分析:f{1,2,..k}表示k 个人1..k,从begin 序号开始向后杀,最后留下的那个人的号码f{1,2,..k};eg:f{1,2,3}表示{1,2,3}这3 个人,从1 开始,经过两轮轮杀掉其他人,剩下3.即f{1,2,3}=3;易得: {1,2,3,4}4 个人从1 开始第一被杀的人肯定是2,所以剩下{1,3,4}这个状态时刻,第一个有权利杀人的人(即begin)是3,所以对{3,4,1}进行f{1,3,4}。显然,这是一个可以递归的过程。把4->1 看成是连续的数(1=5%4)即{3,4,5%4}因此:3 个人, f{1,2, 阅读全文
posted @ 2012-10-26 16:19 智慧的老鸟 阅读(663) 评论(0) 推荐(0) 编辑

2012年10月23日

摘要: 计算机经典书籍汇总,下载地址:http://bbs.theithome.com/read-htm-tid-308.html1.计算机科学概论计算机科学概论2.计算机数学基础高等数学线性代数概率论与数理统计离散数学及其应用离散数学教程(北大版)什么是数学具体数学:计算机科学基础3.C语言谭浩强C程序设计C primer plusThe C programming languageC和指针C专家教程C陷阱与缺陷c语言解惑C标准库你必须知道的495个C语言问题4.算法与数据结构数据结构(清华版)数据结构与算法分析—C语言描述编程珠玑编程珠玑II算法导论计算机程序设计艺术卷1计算机程序设计艺术卷2计算 阅读全文
posted @ 2012-10-23 14:19 智慧的老鸟 阅读(1778) 评论(0) 推荐(0) 编辑

摘要: STL用法很通俗易懂,但是,想深入了解STL源码的实现,以为以后设计自己的模板类。首先应了解和掌握模板类的设计方法,然后推荐《C++模板元编程》、《STL源码剖析》两本书,博大精深的STL!这些书电子版在jask中都能下到。1. 类模板和STLSTL是C++的标准模板库,其源码编程完全依赖模板实现。类模板是能根据不同参数建立不同类型成员的类。2. 类模板的定义template<模板类参数>class 类名{成员名;};根据需要参数可以多个。3. STL是模板类应用的一个最好的开源实例在掌握STL的基本用法的基础上去理解模板类的设计会更加深刻,在掌握模板类设计的基础上,可以设计出自己 阅读全文
posted @ 2012-10-23 13:38 智慧的老鸟 阅读(422) 评论(0) 推荐(0) 编辑

2012年10月19日

摘要: 正则表达式的应用正则表达式是用来处理字串的一种工具,和bash一样重要,是学习linux的人通二脉。举个例子:grep命令去你的~/.bashrc 文件中加入alias grep='grep --color=auto',这样你grep是高亮的。例子1 查网卡信息dmesg | grep -n -A3 -B2 'eth'例子2 查文件中的信息grep -n 'the' test.txt //从刚刚的文件当中取得 the 这个特定字串grep -vn 'the' test.txt //当该行没有 'the' 这个字串时 阅读全文
posted @ 2012-10-19 16:41 智慧的老鸟 阅读(234) 评论(0) 推荐(0) 编辑

2012年10月18日

摘要: linux shell是强大的脚本程序,语法简单,下面是一个可执行的sh脚本,涵盖了常用的shell语法和用法,理解它,就等于入门了。#!/bin/bash# title :# date : ?2012/10/18# author: Made by hfxecho '[test @test test]# sh [-nvx] scripts-n :不要执行 scripts ,查询 scripts 内的语法,若有错误则予以列出!-v :在执行 scripts 之前,先将 scripts 的内容显示在屏幕上;-x :将有使用到的 scripts 内容显示在屏幕上,与 -v 稍微不同 ' 阅读全文
posted @ 2012-10-18 17:00 智慧的老鸟 阅读(333) 评论(0) 推荐(0) 编辑

摘要: 【定时启动你的linux程序】*********************************************************最小模型例子:你的程序:vi hello.sh 1 #! /bin/sh 2 3 echo "hello world" 4你的任务:crontab -e 00 15 18 10 * mail hfx < /home/hfx/shell/hello.shok!你的sh脚本将在今年的10月18日15:30分执行查看你的任务:crontab -l删除你的任务:crontab -r // 注意所有都删除了还是进入你的crontab - 阅读全文
posted @ 2012-10-18 15:41 智慧的老鸟 阅读(3214) 评论(0) 推荐(0) 编辑