07 2012 档案

摘要:有两个数组a,b,大小都为n,数组元素的值任意整形数,无序; 要求:通过交换a,b中的元素,使数组a元素的和与数组b元素的和之间的差最小。 当前数组a和数组b的和之差为 A = sum(a) - sum(b) a的第i个元素和b的第j个元素交换后,a和b的和之差为 A' = sum(a) - a[i] + b[j] - (sum(b) - b[j] + a[i]) = sum(a) - sum(b) - 2 (a[i] - b[j]) = A - 2 (a[i] - b[j]) 设x = a[i] - b[j] |A| - |A'| = |A| - |A-2x| 假设A > 阅读全文
posted @ 2012-07-17 14:35 Itachi7 阅读(5910) 评论(4) 推荐(3) 编辑
摘要:和单链表差不多,就不多说了。特别注意在插入和删除链表元素操作时,仔细考虑该元素与相邻元素的前向指针、和后续指针的改变。struct Node { int val; Node* pret; Node* next;};Node* cre_list(int n) //创建双向链表 n代表元素个数{ Node* head_temp = NULL; if (n > 0) { Node* head = new Node; head->val = rand()%100; head->pret = NULL; ... 阅读全文
posted @ 2012-07-06 15:18 Itachi7 阅读(209) 评论(0) 推荐(0) 编辑
摘要:链表是笔试面试经常考的内容,这次没有看书,完全按照自己的思路完成链表基本实现。1. 单链表的创建这里之前由于申请连续空间导致不可预见的错误,感谢花花帮我指出错误。struct Node { int val; Node * next;};Node* creat_list(int n) //创建单链表 n为元素个数{ Node* head = NULL; Node* head_temp = NULL; if (n > 0) { head = new Node; head_temp = head; /... 阅读全文
posted @ 2012-07-06 11:12 Itachi7 阅读(240) 评论(0) 推荐(0) 编辑
摘要:公有继承时基类中各成员属性保持不变,基类中private成员被隐藏。派生类的成员只能访问基类中的public/protected成员,而不能访问private成员;派生类的对象只能访问基类中的public成员。私有继承时基类中各成员属性均变为private,并且基类中private成员被隐藏。派生类的成员也只能访问基类中的public/protected成员,而不能访问private成员;派生类的对象不能访问基类中的任何的成员。 保护继承时基类中各成员属性均变为protected,并且基类中private成员被隐藏。派生类的成员只能访问基类中的public/protected成员,而不能访问p 阅读全文
posted @ 2012-07-03 22:48 Itachi7 阅读(9014) 评论(0) 推荐(2) 编辑
摘要:解题思路主要是从回文数的构造出发,貌似一般与回文数有关的都是构造回文数,而不是去搜索。分为多种情况:A. 该数的长度是奇数(只有1位很好办,除9外直接加1,9的话输出11),取出该数的前半截(包括中间数), 1.若该数是回文数,则用前半截数值加1,之后再构造新的回文数; 2.不是回文数,从中间往两边找到第一个不相等(因为不是回文数,所以肯定能找到)的数,若前面的小于后面的,则按1处理(用前半截数值加1,之后再构造新的回文数); 若前面的大于后面的,则直接用前半截来构造回文数。B. 该数的长度是偶数,取出前半截(正好是一半),思路和奇数的差不多, 如果是回文数或前半截小,则把前半截+1后... 阅读全文
posted @ 2012-07-03 11:39 Itachi7 阅读(4308) 评论(0) 推荐(0) 编辑
摘要:1. 如何用虚函数实现多态 1 class A 2 { 3 public: 4 virtual void print() 5 { 6 cout<<"THIS IS A"<<endl; 7 } 8 }; 9 class B:public A10 {11 public:12 void print()13 {14 cout<<"THIS IS B"<<endl;15 }16 };17 int main()18 {19 A a;20 B b;21 A* p1 = &a;22 A* p2 = ... 阅读全文
posted @ 2012-07-02 21:03 Itachi7 阅读(306) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示