<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[cjbbx的专栏]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/cjbbx</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; cjbbx]]></copyright><item><title><![CDATA[操作系统练习题2]]></title><link>https://blog.youkuaiyun.com/cjbbx/article/details/7658445</link><guid>https://blog.youkuaiyun.com/cjbbx/article/details/7658445</guid><author>cjbbx</author><pubDate>Wed, 13 Jun 2012 10:19:45 +0800</pubDate><description><![CDATA[一、 选择题

1、引入进程概念的关键在于         。

A、独享资源     B、共享资源      C、顺序执行      D、便于执行

2、操作系统核心部分的主要特点是         。

A、一个程序模块     B、常驻内存      C、有头有尾的程序   D、串行执行

3、系统调用是         。

A、一条机器指令    B、提供编程人员]]></description><category></category></item><item><title><![CDATA[操作系统练习题1]]></title><link>https://blog.youkuaiyun.com/cjbbx/article/details/7658431</link><guid>https://blog.youkuaiyun.com/cjbbx/article/details/7658431</guid><author>cjbbx</author><pubDate>Wed, 13 Jun 2012 10:16:55 +0800</pubDate><description><![CDATA[一、选择题(选择最确切的一个答案，将其代码填入括号中，每空2分，共20分)

1．把逻辑地址转变为内存的物理地址的过程称做(    )。

A. 编译                     B．连接

C. 运行                     D. 重定位

2．进程和程序的一个本质区别是(    )。

A. 前者分时使用CPU，后者独占CPU

B．前者存储]]></description><category></category></item><item><title><![CDATA[谷歌面试题:数组元素移动交叉]]></title><link>https://blog.youkuaiyun.com/cjbbx/article/details/7647132</link><guid>https://blog.youkuaiyun.com/cjbbx/article/details/7647132</guid><author>cjbbx</author><pubDate>Sat, 09 Jun 2012 02:07:37 +0800</pubDate><description><![CDATA[题目：输入数组：{a1,a2,…,an,b1,b2,…,bn}, 在O(n)的时间,O(1)的空间将这个数组的顺序变为{a1,b1,a2,b2,a3,b3,…,an,bn}， 且不需要移动，通过交换完成，只需一个交换空间。

解答：从结果入手，结果数组的中垂线两边分别a数组的一半和b数组的一半的混合，继续将子数组以中垂线划分下去，可以看到类似的规律，因此，可以使用类似的分治算法实现。

参]]></description><category></category></item><item><title><![CDATA[c/c++里的 堆区 栈区 静态区 文字常量区 程序代码区]]></title><link>https://blog.youkuaiyun.com/cjbbx/article/details/7640386</link><guid>https://blog.youkuaiyun.com/cjbbx/article/details/7640386</guid><author>cjbbx</author><pubDate>Thu, 07 Jun 2012 01:02:07 +0800</pubDate><description><![CDATA[一个由C/C++编译的程序占用的内存分为以下几个部分



　　1、栈区（stack）— 由编译器自动分配释放 ，存放函数的参数值，局部变量的值等。其操作方式类似于数据结构中的栈。 
       堆(heap)：由malloc,new等分配的空间的地址,地址由低向高增长（程序员释放）。



　　2、堆区（heap） — 一般由程序员分配释放， 若程序员不释放，程序结束时可能由]]></description><category></category></item><item><title><![CDATA[一些面试题]]></title><link>https://blog.youkuaiyun.com/cjbbx/article/details/7636547</link><guid>https://blog.youkuaiyun.com/cjbbx/article/details/7636547</guid><author>cjbbx</author><pubDate>Wed, 06 Jun 2012 01:56:01 +0800</pubDate><description><![CDATA[计算机面试题






【字符串】

1、输入一个字符串，打印出该字符串中字符的所有排列。
    例如输入字符串abc，则输出由字符a、b、c所能排列出来的所有字符串abc、acb、bac、bca、cab和cba。

2、有一个由大小写组成的字符串，现在需要对他进行修改，将其中的所有小写字母排在大写字母的前面

    （大写或小写字母之间不要求保持原来次序），如有]]></description><category></category></item><item><title><![CDATA[路由器，集线器，交换机]]></title><link>https://blog.youkuaiyun.com/cjbbx/article/details/7625325</link><guid>https://blog.youkuaiyun.com/cjbbx/article/details/7625325</guid><author>cjbbx</author><pubDate>Sat, 02 Jun 2012 09:18:51 +0800</pubDate><description><![CDATA[某一天，你到你女友小芳（暂定这个名字吧）就读的学校去找她，那么你的做法是什么呢：
一、集线器的工作方式：
你站到学校中庭，大喊一声“小芳，我来你找你了！” （广播）


如果这个时候正好有别人也在大喊大叫，你就必须等他喊完了再喊。 （排队）


如果你喊的时候不巧碰上另一个人跟你同时喊，那么你和他喊的内容都不能被听见。 （冲突）


你喊的时候，是听不见别人说什么的，只有喊完]]></description><category></category></item><item><title><![CDATA[集线器,路由器，交换机的作用和区别是什么]]></title><link>https://blog.youkuaiyun.com/cjbbx/article/details/7625321</link><guid>https://blog.youkuaiyun.com/cjbbx/article/details/7625321</guid><author>cjbbx</author><pubDate>Sat, 02 Jun 2012 09:17:16 +0800</pubDate><description><![CDATA[号称网络硬件三剑客的集线器（Hub）、交换机（Switch）与路由器（Router）一直都是网络界的活跃分子，但让很多初入网络之门的菜鸟恼火的是，它们三者不仅外观相似，而且经常呆在一起，要想分清谁是谁，感觉有点难!就让我们一起来看看它们之间有什么区别和联系吧! 


三剑客的工作原理 


一、集线器 
1.什么是集线器 
在认识集线器之前，必须先了解一下中继器。在我们接触到的网络]]></description><category></category></item><item><title><![CDATA[指针和数组存储在哪里的问题]]></title><link>https://blog.youkuaiyun.com/cjbbx/article/details/7606237</link><guid>https://blog.youkuaiyun.com/cjbbx/article/details/7606237</guid><author>cjbbx</author><pubDate>Sun, 27 May 2012 11:30:31 +0800</pubDate><description><![CDATA[请教：char *p="abcdef"和char s[]="abcdef"存储在哪里的问题？
#include  
int main() 
{ 
char *p="abcdef"; //很多书上说：p在栈，“abcdef”在数据区 
p[2]='W'; 
printf(p); 
getchar(); 
return 0; 
} 
这个程序编译通过，但是问什么程序运行会出错？]]></description><category></category></item><item><title><![CDATA[(面试题)求出两两之差绝对值最小的值]]></title><link>https://blog.youkuaiyun.com/cjbbx/article/details/7605623</link><guid>https://blog.youkuaiyun.com/cjbbx/article/details/7605623</guid><author>cjbbx</author><pubDate>Sun, 27 May 2012 01:08:18 +0800</pubDate><description><![CDATA[1.        有一个整数数组，请求出两两之差绝对值最小的值。记住，只要得出最小值即可，不需要求出是哪两个数。（Microsoft） 

方法1：两两作差求绝对值，并取最小，O( n2 )。

方法2：排序，相邻两点作差求绝对值，并取最小，O( nlgn ).

方法3：有没有O( n )的解法？（选择网络）

设数组A = { a1, a2, … , an }, 求 s =]]></description><category></category></item><item><title><![CDATA[[面试题] 求数组两两之差绝对值最小的值]]></title><link>https://blog.youkuaiyun.com/cjbbx/article/details/7603306</link><guid>https://blog.youkuaiyun.com/cjbbx/article/details/7603306</guid><author>cjbbx</author><pubDate>Fri, 25 May 2012 21:17:31 +0800</pubDate><description><![CDATA[一 题目描述：

　　有一个整数数组，请求出两两之差绝对值最小的值，只要求出最小值即可，不要求求出是哪两个数。

　　二 常规思路：

　　求解此题的寻常思路是什么？观察题目我注意到后面强调不要求求出两个数，那么最最简单的O(n^2)的算法显然做了很多无用功。嗯，好，既然这个办法不行想想其他的。对于数组也就是序列之类的题，有一种很常用的思路那就是预处理。这道题目貌似是可以的。]]></description><category></category></item><item><title><![CDATA[（转）经典面试题]]></title><link>https://blog.youkuaiyun.com/cjbbx/article/details/7601155</link><guid>https://blog.youkuaiyun.com/cjbbx/article/details/7601155</guid><author>cjbbx</author><pubDate>Fri, 25 May 2012 11:07:14 +0800</pubDate><description><![CDATA[1.        有一个整数数组，请求出两两之差绝对值最小的值。记住，只要得出最小值即可，不需要求出是哪两个数。（Microsoft） 

方法1：两两作差求绝对值，并取最小，O( n2 )。

方法2：排序，相邻两点作差求绝对值，并取最小，O( nlgn ).

方法3：有没有O( n )的解法？网上有如下解法：

设数组A = { a1, a2, … , an }, 求 s]]></description><category></category></item><item><title><![CDATA[常量指针和指针常量]]></title><link>https://blog.youkuaiyun.com/cjbbx/article/details/7451607</link><guid>https://blog.youkuaiyun.com/cjbbx/article/details/7451607</guid><author>cjbbx</author><pubDate>Wed, 11 Apr 2012 22:31:56 +0800</pubDate><description><![CDATA[int const *p: p的指向可能变,但p指向的变量不可以变.const int *p同int const *p.
int *const p: p的指向不能变,即p开始指向哪个变量就只能指向这个变量,不能更改.但p指向的变量可以变.
可以输出看看指针指向的地址就明白了：
#include 
using namespace std;
int main()
{
	int a=10,b=20;]]></description><category></category></item><item><title><![CDATA[浅谈C++/JAVA/C#运行机制和执行效率]]></title><link>https://blog.youkuaiyun.com/cjbbx/article/details/7419558</link><guid>https://blog.youkuaiyun.com/cjbbx/article/details/7419558</guid><author>cjbbx</author><pubDate>Sun, 01 Apr 2012 15:46:08 +0800</pubDate><description><![CDATA[貌似有段时间没写日志了，却忽然有个念头，想写写有关专业方面的东西。

        估计有很多同学都对C++/JAVA/C#这三大热门语言的运行机制和执行效率有或多或少的困惑，自己也有，但是经过前期的学习，了解了三者在这两方面的区别，就废话不说了，进入主题吧。

        一、运行机制

       1、JAVA-编译和解释型语言   

       一个JAVA文件，]]></description><category></category></item><item><title><![CDATA[关于矩阵的一些操作（求转置矩阵、行列式、矩阵的秩、矩阵的逆矩阵、两个矩阵的乘积矩阵）]]></title><link>https://blog.youkuaiyun.com/cjbbx/article/details/7351094</link><guid>https://blog.youkuaiyun.com/cjbbx/article/details/7351094</guid><author>cjbbx</author><pubDate>Tue, 13 Mar 2012 23:22:47 +0800</pubDate><description><![CDATA[该程序的功能主要解决一些简单矩阵计算问题。

主要功能有：

① 矩阵输入

② 矩阵输出

③ 输出矩阵的转置矩阵（可转置任意行列的矩阵）

④ 求方阵的行列式（如果你输入错误，程序将提示你错误，你可关闭程序，重新输入行列相同的矩阵，再进行计算）

⑤ 求矩阵的秩

⑥ 求矩阵的逆矩阵（前提：行和列相等）

⑦ 求两个矩阵的乘积矩阵（其中之一是你已经输入的那一个矩]]></description><category></category></item><item><title><![CDATA[大整数相加问题]]></title><link>https://blog.youkuaiyun.com/cjbbx/article/details/7344412</link><guid>https://blog.youkuaiyun.com/cjbbx/article/details/7344412</guid><author>cjbbx</author><pubDate>Mon, 12 Mar 2012 13:07:45 +0800</pubDate><description><![CDATA[在计算机中，由于处理器位宽限制，只能处理有限精度的十进制整数加减法，比如在32位处理器计算机中，参与运算的操作数和结果必须在**之间。如果需要进行更大范围的十进制整数加法，需要使用特殊的方式实现，比如使用字符串保存操作数和结果，采取逐位运算的方式。比如下面问题：

9876543210 + 1234567890 =？

让字符串 num1 = "9876543210"，字符串 num2 =]]></description><category></category></item><item><title><![CDATA[c++ math库函数]]></title><link>https://blog.youkuaiyun.com/cjbbx/article/details/7344216</link><guid>https://blog.youkuaiyun.com/cjbbx/article/details/7344216</guid><author>cjbbx</author><pubDate>Mon, 12 Mar 2012 11:45:30 +0800</pubDate><description><![CDATA[abs

原型：extern int abs(int x);
用法：#include 
功能：求整数x的绝对值
说明：计算|x|, 当x不为负时返回x，否则返回-x
举例：
      
      #include 
      #include 

      main()
      {
        int x;
        clrscr();]]></description><category></category></item><item><title><![CDATA[变量的生命周期与作用域]]></title><link>https://blog.youkuaiyun.com/cjbbx/article/details/7343159</link><guid>https://blog.youkuaiyun.com/cjbbx/article/details/7343159</guid><author>cjbbx</author><pubDate>Sun, 11 Mar 2012 22:54:59 +0800</pubDate><description><![CDATA[作用域和生存周期是完全不同的两个概念。作用域可以看作是变量的一个有效范围，就像网游中的攻击范围一样；生存周期可以看成是一个变量能存在多久，能在那些时段存在，就像网游中的魔法持续时间……简单的以一个局部变量来举个例子：在main函数中声明了变量a，那么a的作用域就是main函数内部，脱离了main函数，a就无法使用了，main函数之外的函数或者方法，都无法去使用a。那么a的生存周期是指a在那些时候存]]></description><category></category></item><item><title><![CDATA[c/c++内存机制]]></title><link>https://blog.youkuaiyun.com/cjbbx/article/details/7341821</link><guid>https://blog.youkuaiyun.com/cjbbx/article/details/7341821</guid><author>cjbbx</author><pubDate>Sun, 11 Mar 2012 13:46:29 +0800</pubDate><description><![CDATA[一：C语言中的内存机制

在C语言中，内存主要分为如下5个存储区：

（1）栈(Stack)：位于函数内的局部变量（包括函数实参），由编译器负责分配释放，函数结束，栈变量失效。

（2）堆(Heap)：由程序员用malloc/calloc/realloc分配，free释放。如果程序员忘记free了，则会造成内存泄露，程序结束时该片内存会由OS回收。

（3）全局区/静态区(Glob]]></description><category></category></item><item><title><![CDATA[c++ 编译期与运行期 总结]]></title><link>https://blog.youkuaiyun.com/cjbbx/article/details/7332063</link><guid>https://blog.youkuaiyun.com/cjbbx/article/details/7332063</guid><author>cjbbx</author><pubDate>Thu, 08 Mar 2012 11:25:51 +0800</pubDate><description><![CDATA[一 见识编译期的力量

#include    
using namespace std;   
class A{   
public:   
    virtual void f(){cout
};   

class B:public A   
{   
private:   
    void f(){cout
};   

int main()   
{]]></description><category></category></item><item><title><![CDATA[( 转载)栈区，堆区，全局区，文字常量区，程序代码区 详解]]></title><link>https://blog.youkuaiyun.com/cjbbx/article/details/7331964</link><guid>https://blog.youkuaiyun.com/cjbbx/article/details/7331964</guid><author>cjbbx</author><pubDate>Thu, 08 Mar 2012 11:07:45 +0800</pubDate><description><![CDATA[一个由 C/C++ 编译的程序占用的内存分为以下几个部分 
1 、栈区（ stack ） — 由编译器自动分配释放 ，存放函数的参数值，局部变量的值等。其操作方式类似于数据结构中的栈。 
2 、堆区（ heap ） — 一般由程序员分配释放， 若程序员不释放，程序结束时可能由 OS 回收 。注意它与数据结构中的堆是两回事，分配方式倒是类似于链表，呵呵。 
3 、全局区（静态区）（ stati]]></description><category></category></item></channel></rss>