上一页 1 ··· 4 5 6 7 8 9 下一页
摘要: 前几天在sicily做到一道关于二叉树重建的问题,引出了许许多多的思考。这道题的链接在:http://soj.me/1935其实这道题不算太难,之前在数据结构课上,做过类似的,不过要将二叉树重建过来。代码的实现如下:#include <iostream>#include <queue>#include <string>using namespace std;template <typename T> struct BinaryNode{ T elem; BinaryNode *left; BinaryNode * right; BinaryNod 阅读全文
posted @ 2013-02-23 18:20 中大黑熊 阅读(269) 评论(0) 推荐(0) 编辑
摘要: 大家好!过完新年后,在宿舍闲着蛋疼,就把上学期无法实现的哈夫曼树的压缩及其解压实现一下了。至于怎么压缩各种格式的文件,现在还没有找到实现方法。以下是代码实现://Huffman_H.h#ifndef Huffman_H#define Huffman_H#include <string>#include <fstream>#include <queue>#include <vector>using namespace std;const int MAX_SIZE = 256; //含有256个ACSII码struct huffman_node{ c 阅读全文
posted @ 2013-02-20 23:19 中大黑熊 阅读(4463) 评论(1) 推荐(1) 编辑
摘要: 上网借鉴人家的,并没有进行测试。#ifndef AVLTree_H#define AVLTree_Htemplate<typename T>class AVLTree{ AVLTree(); AVLTree(const AVLTree & rhs); ~AVLTree(); const T & findMin() const; const T & findMax() const; bool contains(const T & x) const; bool isEmpty() const; void printTree() const; void m 阅读全文
posted @ 2013-02-12 11:48 中大黑熊 阅读(317) 评论(0) 推荐(0) 编辑
摘要: 新年到!中大黑熊祝大家新年快乐!在这里,po上二叉查找树的比较全的实现,我自己整理的,没有测试过,希望有错的能和我说一声,赐教赐教一下我哈!#ifndef BinaryTree_H#define BinaryTree_Htemplate<typename T>struct BinaryNode{ T element; BinaryNode * left; BinaryNode * right; BinaryNode(const T & theElement,BinaryNode *lt = NULL,BinaryNode *rt = NULL):element(theEle 阅读全文
posted @ 2013-02-12 00:27 中大黑熊 阅读(1342) 评论(0) 推荐(0) 编辑
摘要: C++ STL容器deque和vector很类似,也是采用动态数组来管理元素。使用deque之前需包含头文件:#include <deque>deque的内部结构deque是一种优化了的对序列两端元素进行添加和删除操作的基本序列容器。通常由一些独立的区块组成,第一区块朝某方向扩展,最后一个区块朝另一方向扩展。它允许较为快速地随机访问但它不像vector一样把所有对象保存在一个连续的内存块,而是多个连续的内存块。并且在一个映射结构中保存对这些块以及顺序的跟踪。其内部结构如下图所示:deque的特点:1、支持随机访问,即支持[]以及at(),但是性能没有vector好。2、可以在内部进 阅读全文
posted @ 2013-02-06 23:46 中大黑熊 阅读(583) 评论(0) 推荐(0) 编辑
摘要: 之前上学期间的作业,但当时没有用类来封装起来,所以打算重写,结果发现自己之前要写4,5个小时,现在居然两个小时就搞定了,但还有缺点,test函数太长,算法的核心部分其实没有封装起来,跪求大神指点。以下是代码实现://RANDOM.h#ifndef RANDOM_H#define RANDOM_H class Random {public: Random(bool pseudo = true);// Declare random-number generation methods here. int random_integer(int low, int high); do... 阅读全文
posted @ 2013-02-06 00:46 中大黑熊 阅读(247) 评论(0) 推荐(0) 编辑
摘要: //注意题目上说的:若词频相同,则想输出在表中先出现的那一个。因此要用一个记录容器vector代码:#include <iostream>#include <map>#include <vector>#include <string>using namespace std;int main(){ int num; while(cin >> num && num != 0) { map<string,int> records; map<string,int>::iterator itr; vect 阅读全文
posted @ 2013-02-04 14:59 中大黑熊 阅读(248) 评论(0) 推荐(0) 编辑
摘要: 今天在做有关数据结构字符串处理类的题目,遇到一个蛮有意思的问题,就是sicily 1282 的问题。看了很大串英文,其实就是讲述这样的一个问题:// 题意: A是主串,B是子串,都由数字组成, 查询B串在A串第一次出现的位置,若找不到则输出no solution// 注意子串的最大长度是60000,但主串的长度未知,所以要开大些其实这里蕴含了一个蛮重要的算法,就是KMP算法。这里对不起,我也是百度了一下才知道这个是一个怎么样的算法,先向博客园的用户海子和链接为http://www.cppblog.com/suiaiguo/archive/2009/07/16/90237.html的博客致敬,感 阅读全文
posted @ 2013-02-04 00:54 中大黑熊 阅读(734) 评论(0) 推荐(1) 编辑
摘要: 同样也是sicily2302的答案#ifndef QUEUE_H#define QUEUE_H//利用循环数组实现一个队列template <typename T> class Queue {public: Queue(); // construct an empty queue ~Queue(); // destructor Queue(const Queue &rhs); const Queue & operator=(const Queue &rhs); bool empty() const; bool full() const; int size() 阅读全文
posted @ 2013-02-03 14:43 中大黑熊 阅读(218) 评论(0) 推荐(0) 编辑
摘要: 放假无聊,而且又不想学什么java,web编程等等。觉得自己oop思想还是不够,所以就打算把乔老的《数据结构与算法实验教程》的实验全部做完再说。下面就做了一个行编辑器:Editor_H.h:#ifndef Editor_H#define Editor_H#include <iostream>#include <list>#include <fstream>#include <vector>#include <string>using namespace std;class Editor{public://后置条件:编辑器为空。Edit 阅读全文
posted @ 2013-01-29 13:48 中大黑熊 阅读(391) 评论(0) 推荐(0) 编辑
上一页 1 ··· 4 5 6 7 8 9 下一页