代码改变世界

C++中delete和delete[]的区别

2015-03-31 17:21 by 李涛的技术博客, 353 阅读, 1 推荐, 收藏, 编辑
摘要:转载http://www.cnblogs.com/charley_yang/archive/2010/12/08/1899982.html C++告诉我们在回收用 new 分配的单个对象的内存空间的时候用 delete,回收用 new[] 分配的一组对象的内存空间的时候用 delete[]。关于 ... 阅读全文

二叉搜索树的查找与删除

2015-03-29 23:38 by 李涛的技术博客, 284 阅读, 0 推荐, 收藏, 编辑
摘要:在二叉搜索树中查找一个数,如果存在,则从树中删除。struct Node{ Node* left; Node* right; int data;};void findAndDel(Node*& head, int k){ if (!head) return; ... 阅读全文

Remove Nth Node From End of List

2015-03-11 17:21 by 李涛的技术博客, 208 阅读, 0 推荐, 收藏, 编辑
摘要:Question:Given a linked list, remove the nth node from the end of list and return its head.For example,Given linked list: 1->2->3->4->5, and n = 2.Aft... 阅读全文

链表反转

2015-03-11 16:34 by 李涛的技术博客, 111 阅读, 0 推荐, 收藏, 编辑
摘要:void reverse(Node*& head){ if (!head) return; Node *p1, *p2, *p3; p1 = head; p2 = p1->next; p1->next = NULL; while (p2) { ... 阅读全文

删除有序链表中重复的元素

2015-03-11 15:53 by 李涛的技术博客, 566 阅读, 0 推荐, 收藏, 编辑
摘要:比如 1->2->2->3,删除重复后,变为1->3。void delDup(Node* head){ Node node; node.next = head; Node* n1, n2; n1 = node; n2 = node->next; int d... 阅读全文

Binary Tree Level Order Traversal

2015-03-10 15:29 by 李涛的技术博客, 303 阅读, 0 推荐, 收藏, 编辑
摘要:Question:Given a binary tree, return the bottom-up level order traversal of its nodes' values. (ie, from left to right, level by level from leaf to ro... 阅读全文

Search a 2D Matrix

2015-03-10 14:54 by 李涛的技术博客, 284 阅读, 0 推荐, 收藏, 编辑
摘要:Question:Write an efficient algorithm that searches for a value in an m x n matrix. This matrix has the following properties:Integers in each row are ... 阅读全文

C++中,new/delete和malloc/free的区别

2015-03-06 15:35 by 李涛的技术博客, 7181 阅读, 2 推荐, 收藏, 编辑
摘要:1、new/delete是C++的操作符,而malloc/free是C中的函数。2、new做两件事,一是分配内存,二是调用类的构造函数;同样,delete会调用类的析构函数和释放内存。而malloc和free只是分配和释放内存。3、new建立的是一个对象,而malloc分配的是一块内存;new建立的... 阅读全文

定义一个堆栈类

2015-03-06 12:19 by 李涛的技术博客, 340 阅读, 0 推荐, 收藏, 编辑
摘要:templateclass Stack{public: Stack(); ~Stack(); void push(const TYPE &); TYPE& top(); const TYPE& top() const; void pop(); bool em... 阅读全文

有序环形数列的查找问题

2015-03-05 10:53 by 李涛的技术博客, 651 阅读, 0 推荐, 收藏, 编辑
摘要:问题:有一个有序的环形数列,从小到大排好了,比如4, 5, 6, 1, 2, 3,从第四个位置开始当成环形看,就是一个有序数列1, 2, 3, 4, 5, 6。问题是在这个数列重找到给定的关键字。看到有序,自然想到binary search。这个问题可以用binary search做,每次二分,把数... 阅读全文