通常,将软件产品从提出、实现、使用维护到停止使用淘汰的过程称为______。
将一整数逆序后放入一数组中(要求递归实现)
值类型和引用类型的区别?写出C#的样例代码。
在Windows文件系统中,(1)是不合法的文件名,一个完整的文件名由(2)组成。
输入一颗二元树,从上往下按层打印树的每个结点,同一层中按照从左往右的顺序打印。 输出8 6 10 5 7 9 11。
进程和线程分别怎么理解?
组合问题(从M个不同字符中任取N个字符的所有组合)
类CMyString的声明如下:class CMyString{public: CMyString(char* pData = NULL); CMyString(const CMyString str); ~CMyString(void); CMyString operator = (const CMyString str);private: char* m_pData;};请实现其赋值运算符的重载函数,要求异常安全,即当对一个对象进行赋值时发生异常,对象的状态不能改变。
ASP.NET与ASP相比,主要有哪些进步?
DataReader和DataSet的异同
四个工人,四个任务,每个人做不同的任务需要的时间不同,求任务分配的最优方案。(2005年5月29日全国计算机软件资格水平考试——软件设计师的算法题)。
输入一颗二元查找树,将该树转换为它的镜像,即在转换后的二元查找树中,左子树的结点都大于右子树的结点。用递归和循环两种方法完成树的镜像转换。 例如输入:定义二元查找树的结点为:struct BSTreeNode // a node in the binary search tree (BST){ int m_nValue; // value of node BSTreeNode *m_pLeft; // left child of node BSTreeNode *m_pRight; // right child of node};定义二元查找树的结点为:struct BSTreeNode // a node in the binary search tree (BST){ int m_nValue; // value of node BSTreeNode *m_pLeft; // left child of node BSTreeNode *m_pRight; // right child of node};
输入一个整数数组,调整数组中数字的顺序,使得所有奇数位于数组的前半部分,所有偶数位于数组的后半部分。要求时间复杂度为O(n)。
如何理解委托?
阅读下列说明和C++代码,填补代码中的空缺,将解答填入答题纸的对应栏内。【说明】以下C++代码实现两类交通工具(Flight和Train)的简单订票处理,类Vehicle、Flight、Train之间的关系如图6—1所示。【C++代码】#include#includeusingnamespacestd;clasSVehicle{public:virtual~Vehicle(){}voidbook(intn){//订n张票if(getTicket()>=n){decreaseTicket(n);}else{coutv;V.push—back(newFlight());V.pushback(newTrain());V.pushback(newFlight());V.push_back(newTrain());V.push_back(newTrain());cout
输入两个整数序列。其中一个序列表示栈的push顺序,判断另一个序列有没有可能是对应的pop顺序。为了简单起见,我们假设push序列的任意两个整数都是不相等的。 比如输入的push序列是1、2、3、4、5,那么4、5、3、2、1就有可能是一个pop系列。因为可以有如下的push和pop序列:push 1,push 2,push 3,push 4,pop,push 5,pop,pop,pop,pop,这样得到的pop序列就是4、5、3、2、1。但序列4、3、5、1、2就不可能是push序列1、2、3、4、5的pop序列。
阅读以下说明和C代码,填补代码中的空缺,将解答填入答题纸的对应栏内。[说明1]递归函数is elem(char ch,char*set)的功能是判断ch中的字符是否在set表示的字符集合中,若是,则返回1,否则返回0。[C代码1] int is—elem(char ch,char*set) { if(*set==‘\0’) return 0; else if ( (1) ) return 1; else return is—elem( (2) ); }【说明2】函数char*combine(char*setA,char*setB)的功能是将字符集合A(元素互异,由setA表示)和字符集合B(元素互异,由setB表示)合并,并返回合并后的字符集合。【C代码2】char* combj ne(char*setA,char*setB) { int i, lenA, lenB, lenC; lenA=strlen(setA); lenB=strlen(setB); char*setC= (char*)malloc(1enA+lenB+1); if (!setC) return NULL ; strncpy(setc, setA, lenA); //将setA的前lenA个字符复制后存入setc lenc= (3); for (i=0; i<lenB; i++) if((4) ) //调用is—elem判断字符是否在setA中 setC[1enC++] =setB[i]; (5)=‘\0’; //设置合并后字符集的结尾标识 return SetC; }
游标的作用?如何知道游标已经到了最后?
一个台阶总共有n级,如果一次可以跳1级,也可以跳2级。求总共有多少总跳法,并分析算法的时间复杂度。
一个整型数组里除了两个数字之外,其他的数字都出现了两次。请写程序找出这两个只出现一次的数字。要求时间复杂度是O(n),空间复杂度是O(1)。
