摘要:前几天,面试时有被问到一些常见的排序算法,快速排序命中率很高,现整理一些常见的排序算法模板:#include<iostream>using namespace std;template <class T>void Swap(T *a, T *b) { T temp; temp = *a; *a = *b; *b = temp;}/**************************************** 简单排序算法 begin ****************************************//* * 简单选择排序 * A: 以数组存放的无数数
阅读全文
摘要:线性表的顺序表示(二):头文件:seqlist.h#include "linearlist.h"template <class T>class SeqList:public LinearList<T>{ private: int maxLength; // 顺序表的最大长度 T *elements; // 动态一维数组的指针 public: SeqList(int mSize); ~SeqList(); bool IsEmpty() const; int Length() const; bool Find(int i, T &x) const
阅读全文
摘要:基于”线性表的顺序表示”应用篇---求集合A和B的并 A’ = A U B:头文件:seqlistu.h#include "seqlist.h"template <class T>void Union(SeqList<T> &LA, SeqList<T> LB) { T x; for (int i = 0; i < LB.Length(); i++) { LB.Find(i,x); if(LA.Search(x) == -1) { LA.Insert(LA.Length() - 1, x); } }}主函数:test.cpp
阅读全文
摘要:线性表的顺序表示(一):头文件:linearlist.h#include <iostream.h>template <class T>class LinearList{ public: // 若线性表空,则返回true; 否则返回false virtual bool IsEmpty() const = 0; // 返回表中元素的个数 virtual int Length() const = 0; // 将表中下标为i的元素ai赋值给x.若不存在,则返回false,否则返回true virtual bool Find(int i, T &x) const = 0;
阅读全文