文档库 最新最全的文档下载
当前位置:文档库 › 中国矿业大学 空间数据结构基础

中国矿业大学 空间数据结构基础

中国矿业大学 空间数据结构基础
中国矿业大学 空间数据结构基础

《空间数据结构基础》上机实验报告(2010级)

姓名罗京辉

班级测绘10-2班

学号 07103081

环境与测绘学院

1.顺序表的定义与应用(课本P85习题)

【实验目的】

熟练掌握顺序表的定义与应用,通过上机实践加深对顺序表概念的理解。

【实验内容】

设有两个整数类型的顺序表A(有m个元素)和B(有n个元素),其元素均从小到大排列。试编写一个函数,将这两个顺序表合并成一个顺序表C,要求C的元素也从小到大排列。【主要代码】

#include//定义在头文件“SeqList.h”中

#include

const int defaultSize=100;

template

class SeqList{

protected:

T *data;//存放数组

int maxSize;//最大可容纳表象的项数

int Last;//当前已存表象的项数

void reSize(int newSize);//改变data数组空间大小

public:

SeqList(int sz=defaultSize);

SeqList(SeqList& L);

~SeqList(){delete[]data;}

int Size() const{return maxSize;}

int Length()const{return Last+1;}

int Search(T& x)const;

int Locate(int i) const;

T getData(int i) const;

bool setData(int i,T& x)

{if(i>0&&i<=Last+1) data[i-1]=x;}

bool Insert(int i,T& x);

bool Remove(int i,T& x);

bool IsEmpty()

{return (Last==-1)?true:false;}

bool IsFull()

{return(Last==maxSize-1)?true:false;}

void input();

void output();

SeqList operator=(SeqList& L);

friend void rank(SeqList& L);

friend void hebing(SeqList& LA,SeqList& LB);

};

//构造函数,通过指定参数sz定义数组的长度

template

SeqList::SeqList(int sz){

if(sz>0){

maxSize=sz;

Last=-1;

data=new T[maxSize];

if(data==NULL)

{cerr<<"存储分配错误"<

}

}

//复制构造函数,用参数表中给出的已有顺序表初始化新建的顺序表template

SeqList::SeqList(SeqList& L){

maxSize=L.Size();

Last=L.Length()-1;

data=new T[maxSize];

if(data==NULL)

{cerr<<"存储分配错误"<

for(int i=1;i<=Last+1;i++)

data[i-1]=L.getData(i);

}

//用于取第i个表项的值

template

T SeqList::getData(int i) const{

if (i<1 || i>Last+1){cerr<<"存储分配错误"<

else return data[i-1];

}

//私有函数,扩充顺序表的存储空间大小,新数组的元素个数为newsize template

void SeqList::reSize (int newSize)

{

if (newSize<=0)

{cerr<<"无效的数组大小"<

if(newSize!=maxSize)

{T*newarray=new T[newarray];

if(newarray=NULL)

{cerr<<"存储分配错误"<

int n=Last+1;

T*srcptr=data;

T*destptr=newarray;

while(n--)*destptr++=*srcptr++;

delete []data;

data=newarray;maxSize=newSize;

}

}

//搜索函数

template

int SeqList::Search(T& x)const

{

for(int i=0;i<=Last;i++)

if(data[i]==x)return i+1;

return 0;

}

//定位函数

template

int SeqList::Locate(int i)const{

if(i>=1&&i<=Last+1)return i;

else return 0;

}

//插入函数

template

bool SeqList::Insert(int i,T& x){

if(Last==maxSize-1) return false;

if(i<0||i>Last+1) return false;

for(int j=Last;j>=i;j--)

data[j]=data[j-1];

data[i]=x;

Last++;

return true;

}

//删除函数

template

bool SeqList::Remove(int i,T&x){

if(Last==-1)return false;

if(i<1||i>Last+1)return false;

x=data[i-1];

for(int j=i;j<=Last;j++)

data[j-1]=data[j];

Last--;

return true;

}

//输入函数

template

void SeqList::input(){

cout<<"开始建立顺序表,请输入表中元素的最后位置:";

while(1){

cin>>Last;Last--;

if(Last<=maxSize-1) break;

cout<<"表元素个数有误,个数不能超过"<

}

for(int i=0;i<=Last;i++)

{cin>>data[i];}

}

//输出函数

template

void SeqList::output(){

cout<<"顺序表中当前元素的最后位置为:"<

for(int i=0;i<=Last;i++)

cout<

}

//重载操作,顺序表整体赋值

template

SeqList SeqList::operator=(SeqList& L){

maxSize=L.Size();

Last=L.Length()-1;

data=new T[maxSize];

if(data==NULL)

{cerr<<"存储分配错误"<

for(int i=1;i<=Last+1;i++)

data[i-1]=L.getData(i);

}

//合并函数,用于合并顺序表LA,LB。结果存于LA。重复元素只留一个。void hebing(SeqList& LA,SeqList& LB){

int n=LA.Length(),m=LB.Length(),k,x;

for(int i=1;i<=m;i++)

{

x=LB.getData(i);

k=LA.Search(x);

if(k==0)

{LA.Insert(n,x);n++;}

}

}

//对合并后的顺序表进行排序

void rank(SeqList& L)

{

int i,j,temp;

for(i=1;i

for(j=0;j

{

if(L.data[j]>L.data[j+1])

{

temp=L.data[j];

L.data[j]=L.data[j+1];

L.data[j+1]=temp;

}

}

}

void main()

{

SeqListLA;//定义顺序表类对象LA

SeqListLB;//定义顺序表类对象LB

LA.input();

LB.input();

hebing(LA,LB);

SeqListLC(LA);

rank(LC);

LC.output();

}

运行结果:

【实验体会】

通过本次试验,我熟练掌握顺序表的定义与应用。

此次实验通过对顺序表的类定义,进行两顺序表的合并,并在合并后删除相同的元素,然后对新数组进行从小到大的排序。因为顺序表是基于一维数组的储存,所以可以选择冒泡法进行排序。类代码中包含三个数据成员,多个作为外部接口的成员函数,完成顺序表的搜索,定位,插入和删除等操作。运用类模板,Seqlist的数据成员不使用固定的类型定义,而是用class说明的虚拟类型名T作为变量的类型,在定义Seqlist类的对象时,再用C++的基

本类型将对象的数据成员的类型实例化。这样做的好处是可以使用同一个类来定义不同数据类型的对象,提高代码的利用率。

本次试验,受益匪浅。

2.单链表的使用(书P86习题)

【实验简介】

学会用算法语言C++描述抽象数据类型,使用模板建立数据结构。能够使用链表类的定义和部分函数的使用。掌握其数据结构的构建方式并实现相关成员函数。

【实验内容】

设有一个表头指针为h的单链表。试设计一个算法,通过遍历一趟链表,将链表中所有结点的链接方向逆转。要求逆转结果链表的表头指针h指向原链表的最后一个结点。

【主要代码】

#include

using namespace std;

template

struct LinkNode{//链表结点类的定义

T data;//数据域

LinkNode*link;//链指针域

LinkNode(LinkNode*ptr=NULL){link=ptr;}//仅初始化指针成员的构造函数

LinkNode(const T &item,LinkNode*ptr=NULL)//初始化数据与指针成员的构造函数,为item分配一个结点的空间

{data=item;link=ptr;}//将数据成员初始化

};

template

class List{//链表类的定义,直接使用链表结点类的操作

protected:

LinkNode*first;//链表头指针

public:

List(){first=new LinkNode;}//链表类不带参数的构造函数

List(const T&x){first=new LinkNode(x);}//链表类带参数的构造函数

void InputRear(int endTag);//后插法建立单链表函数,以endTag为结束标识符

void output();//用于转置前和转置后链表的输出

void reverse();//转置函数

};

template

void List::InputRear(int endTag){//后插法建立单链表,保证插入的数的顺序与链表一致

LinkNode*newnode,*last;T val;//定义两个指针,一个指向头,一个指向结尾

cin>>val;last=first;

while(val!=endTag){

newnode=new LinkNode(val);//为插入的数分配内存空间

if(newnode==NULL){cerr<<"分配内存出错"<

last->link=newnode;last=newnode;//插入到表末端

cin>>val;//再输入下一个数

}

last->link=NULL;//表收尾,将最后一个数的link域为NULL

};

//下面输出函数是用于输出链表

template

void List::output(){

LinkNode* current=first->link;//初始化,current指向first的link域

while(current!=NULL){

cout<data<

current=current->link;

}

}

//下面为对链表实现转置的函数

template

void List:: reverse(){

//转置函数的实现

LinkNode*h=first,*p,*q;

p=h->link;

h->link=NULL;

while(p!=NULL)

{

q=p;

p=p->link;

q->link=h->link;

h->link=q;

}

}

void main(){

List L;//定义类的对象L

cout<<"请输入若干数,以0作为结尾"<

L.InputRear(0); //调用后插法建立单链表函数

cout<<"链表转置前为"<

L.output();//输出未转置的链表

L.reverse();//调用转置函数,实现转置

cout<<"链表转置后为"<

L.output(); //输出转置后的链表

}

【实验过程】

①首先通过结构体和类建立接点和链表。

②然后,分别对实现功能所需要的函数进行定义

③然后,对定义的各部分函数,进行具体分布实施。

运行如图:

【实验体会】

通过本次试验,我熟悉并掌握了链表的使用。链表适用于插入和删除频繁,存储空间需求不定的情形,有效的克服了顺序表的效率低和时间开销大缺点。带附加头结点的单链表,能够方便的进行链表的插入和删除等各类操作的实现。建立链表时使用后插法建立,使得链表的物理顺序和逻辑顺序一致,符合人们的使用习惯。

在函数的实现的过程中,采用自顶向下分解的方法。受益匪浅。

3.队列和栈的相关应用(书P134习题)

【实验简介】

学会用算法语言C++描述抽象数据类型,使用模板建立数据结构。能够对栈和队列的理解和相关函数的应用。

【实验内容】

设用链表表示一个双端队列,要求可以从表的两端插入,但限制只能在表的一端删,试编写基于此的队列的插入和删除算法,并给出队空的的条件。

【主要代码】

#include

using namespace std;

template

struct LinkNode{//链表结点类的定义

T data;//数据域

LinkNode*link;//链指针域

LinkNode(LinkNode*ptr=NULL){link=ptr;}//仅初始化指针成员的构造函数

LinkNode(const T &item,LinkNode*ptr=NULL)//初始化数据与指针成员的构造函数,为item分配一个结点的空间

{data=item;link=ptr;}//将数据成员初始化

};

template

class Deque{//Deque类

protected:

LinkNode*front,*rear;//定义两个指针,分别指向链表的两端

public:

Deque()//Deque的构造函数

{front=rear=new LinkNode;}

void Enqueue(T &x,int Dir);//插入函数,x为插入的数,tag为插入的方向void Dequeue();//删除函数

bool Isempty(){return (rear==front)?true:false;}//判断是否为空

void output();//输出函数

};

template

void Deque::Enqueue(T &x,int Dir){//插入函数的实现

if(Dir==0){//规定tag=0为从前端插入

LinkNode* newnode;

newnode=new LinkNode(x); //建立一个新结点

if(newnode==NULL){cerr<<"分配内存出错"<

newnode->link=front->link;//插入的实现

front->link=newnode;

if(rear->link!=NULL)//保证rear指针是指向最后的接点

{rear=rear->link;}

}

else{//从后端插入

LinkNode* newnode;

newnode=new LinkNode(x);

if(newnode==NULL){cerr<<"分配内存出错"<

newnode->link=rear->link;

rear->link=newnode;

rear=rear->link;//在后端插入

}

}

template

void Deque::Dequeue(){//删除函数的实现,从后端删除

LinkNode* p;//声明一个p指针

p=front;//从front开始历遍到rear前一个

if(Isempty()==true)//判断链表是否为空

{cout<<"队列为空,无法删除"<

else

while(p->link!=rear){p=p->link;}//p指针历遍到rear前一个接点

rear=p;

p=p->link;

delete p;//删除最后一个接点

rear->link=NULL;//将rear的link域为NULL

}

template

void Deque::output(){//输出函数的实现

LinkNode* current;

current=front->link;

while(current!=NULL){

cout<data<

current=current->link;

}

cout<

}

void main(){

Deque L;//声明一个对象

int temp;//插入的数

int Dir;//插入的方向

int count=1;//计数

while(true){

cout<<"请输入第"<

cin>>temp;

cout<<"请在输入插入的方向,0代表从前插入,1代表从后面插入"<

cin>>Dir;

if(temp==0000)//判断是否结束

break;

else

L.Enqueue(temp,Dir);//插入

count++;

}

cout<<"插入后链表的数为"<

L.output();//调用输出函数

L.Dequeue();//调用删除函数

cout<<"从后端删除后,链表中的数为"<

L.output();//输出

}

【实验过程】

①首先定义结接点结构体和队列类

②插入函数,定义两个指针,并用Dir确定插入的方向,实现从不同方向的输入。

③删除函数,仅定义为在队列的末端删除。

④定于输出函数,实现函数输出。

运行如图:

【实验体会】

通过本次试验,掌握了双端队列使用方法,并能按照要求,从表的两端插入,在表的一端删除。此次试验,基于单链表基础上完成的,难度不大。

通过本次试验,熟悉了队列的使用方法,同时巩固了单链表的使用。

数据结构课程设计实验报告

《空间数据结构基础》 课程实习报告(测绘10级) 姓名 班级 学号 环境与测绘学院

1C++面向对象程序设计基础 【实验简介】学会用算法语言C++描述抽象数据类型,使用模板建立数据结构。理解数据结构的组成分为两部分,第一部分是数据集(数据元素),第二部分是在此数据集上的操作。从面向对象的观点看,这两部分代表了对象的属性和方法。掌握用C++描述数据结构的基本方法,即通过建立类来描述抽象数据类型。类的数据成员提供对象属性,成员函数提供操作方法,方法是公共接口,用户通过调用方法实现对属性的访问。 【实验内容】 1.定义三维空间的坐标点TPoint 2.描述三维空间的球TBall,实现其主要操作(如计算体积和表面积,输出空间坐标 等)。 【主要代码】 头文件: TPoint.h: #ifndef TPOINT_H #define TPOINT_H #include using namespace std; class TPoint { public: TPoint(double xx,double yy,double zz):x(xx),y(yy),z(zz){} TPoint(TPoint &TP):x(TP.x),y(TP.y),z(TP.z){} double getX()const{return x;}//取x坐标值 double getY()const{return y;}//取y坐标值 double getZ()const{return z;}//取z坐标值 void DisplayTP() const {cout<<"("<

中国矿业大学 结构力学 期末试卷

中国矿业大学2009~2010学年第 二 学期 《结构力学A(1)》试卷(A 卷) 考试时间:150 分钟 考试方式:闭卷 注意:第一至第三题请直接在试题旁作答,第四至第七题请在答题纸上作答! 一、判断题。要求:简要说明判断依据,并将错误的加以改正(每题4分,共16分) 1、如果体系的计算自由度小于或等于零,那么体系一定是几何不变体系。( ) 错误。要考虑约束的布置位置是否恰当 2、图一(2)所示结构中B 处支座反力等于 P/2(↑)。 ( ) 错误。等于0。 图一(2) 3、图一(3)所示组合结构,若CD 杆( EA =常数)制造时做短了l ,则E 点的竖向位移方向是向下的。( ) C D A E B 错误。向上的。 图一(3) 4、梁的绝对最大弯矩表示在一定移动荷载作用下当移动荷载处于某一最不利位置时相应截面的截面弯矩。( )。错误。指所有截面最大弯矩值的最大值。

二、对图(二)所示两个平面杆件体系进行几何组成分析。要求:写出必要的分析过程。(每题4分,共8分) (a ) 几何瞬变。去二元体,再应用三刚片规则 (b ) 无多余约束的几何不变体系。依次解除二元体或增加二元体 图(二) 三、填空题(每题4分,共16分)(要求:写出必要的分析过程) 1、图三(1)所示梁中C 截面的弯矩M C = (要注明受拉侧)。 M C = 1/4Fa(下侧受拉),利用弯矩图特征及区段叠加法 图三(1) 2、图三(2)所示拱结构中K 截面的弯矩值M K = (要注明受拉侧)。 2 l /q 4 l /16l /4 l /16 l / M K = 0 ,求支座反力,代入拱弯矩计算公式或直接得用截面法即可。 图三(2)

中国矿业大学2010年数据结构试卷及答案

计算机学院2010-2011学年第一学期 《数据结构》试卷(A 卷)(考试时间:100分钟) 专业: 计算机专业 班级: 序号: 姓名: 注意:所有答案都必须写在答题纸上!!! 三.简答(每小题10分,共50分) 1.有如图所示的有向图,请给出该图的: 1) 邻接矩阵表示; 2) 逆邻接表表示。 2.假定存在数据表:(3,4,5,7,24,30,54,63,72,87,95,102),请解决如下问题: 1) 假设哈希函数为:H(key)=key mod 13,用该哈希函数将数据表存入长度为13 的哈希表,(利用线性探测)请画出存放状态; 2) 请按比较顺序写出查找102的过程中比较的数值,以及比较的次数; 3.请写出对序列{21,25,49,28,16,22,25,38}的二叉排序树构造过程。

4.试利用Dijkstra算法求图中从顶点a到其他各顶点间的最短路径,写出执行算法过程中各步的状态。 5.如果一个项目由10个主要任务构成,其计划图展示了任务之间关系与任务所需天数,则项目关键路径如何求解,请展示其过程。 四.算法(10分,共10分) 请写出折半查找方法的函数Search_Bin( SSTable S, value v)。 要求: 1)函数名使用给出的函数名,参数SSTable 表示序列,使用一维数组存放,下标从0开始,value 表示要查找的值; 2)如果找到,则函数返回值为该数在序列中的位置,否则返回负1; 3)不用写出主函数与相关定义,如果使用其他函数,请注明函数用途。

计算机学院2010-2011学年第一学期 《数据结构》答题纸(A卷)一.填空(2*20=40分)

新版中国矿业大学金融学考研经验考研参考书考研真题

考研是我一直都有的想法,从上大学第一天开始就更加坚定了我的这个决定。 我是从大三寒假学习开始备考的。当时也在网上看了很多经验贴,可是也许是学习方法的问题,自己的学习效率一直不高,后来学姐告诉我要给自己制定完善的复习计划,并且按照计划复习。 于是回到学校以后,制定了第一轮复习计划,那个时候已经是5月了。 开始基础复习的时候,是在网上找了一下教程视频,然后跟着教材进行学习,先是对基础知识进行了了解,在5月-7月的时候在基础上加深了理解,对于第二轮的复习,自己还根据课本讲义画了知识构架图,是自己更能一目了然的掌握知识点。8月一直到临近考试的时候,开始认真的刷真题,并且对那些自己不熟悉的知识点反复的加深印象,这也是一个自我提升的过程。 其实很庆幸自己坚持了下来,身边还是有一些朋友没有走到最后,做了自己的逃兵,所以希望每个人都坚持自己的梦想。 本文字数有点长,希望大家耐心看完。 文章结尾有我当时整理的详细资料,可自行下载,大家请看到最后。中国矿业大学金融学的初试科目为: (101)思想政治理论和(201)英语一或(203)日语 (303)数学三和(863)金融学 参考书目为: 高数:同济大学应用数学系主编的《高等数学》(上、下册)(绿色封 皮) 线性代数:同济大学应用数学系主编的《线性代数》(紫色封皮)

概率:浙江大学编的《概率论与数理统计》(蓝色封皮) 《金融学》第三版中国人民大学出版社 2013.1 黄达编制 《货币金融学》第三版上海财经大学出版社 2012.6 戴国强主编先说说真题阅读的做法… 第一遍,做十年真题【剩下的近三年的卷子考试前2个月再做】,因为真题要反复做,所以前几遍都是把自己的答案写在一张A4纸上,第一遍也就是让自己熟悉下真题的感觉,虐虐自己知道英语真题的大概难度,只做阅读理解,新题型完形填空啥的也不要忙着做,做完看看答案,错了几个在草稿纸上记下来就好了,也不需要研究哪里错了为什么会错…第一遍很快吧因为不需要仔细研究,14份的试卷,一天一份的话,半个月能做完吧,偷个懒一个月肯定能做完吧【第一遍作用就是练练手找到以前做题的感觉,千万不要记答案,分析答案…】ps:用书选择:木糖英语闪电单词+木糖英语真题。 第二遍是重点…你回头再从97年做起会发现答案是记不住的,还会错很多,甚至错的还不一样,以前对的现在错了,上次错的现在对了,正常……第二遍一份卷子大概要4,5天才能完成吧,比如第一天你做完了,第二天从第一篇文章开始从头看,不会的单词全部记下来到自己的单词本子上,最好是专门记真题单词的本子,包括题目,选项里面不会的单词,虽然黄皮书上有解释,但大都不全,甚至给的不是句子里的意思,这个工程还是挺大的,一天两篇就可以了…这一遍也不需要研究句子和答案啥的,只不过记单词中除了自己买的单词大本,还要加入真题单词的记忆了,考研不止,单词不息,单词反复背……第二遍就40天来天能完成吧,最多也就两个月【时间都是宽裕的,能提前完成点最好】… 第三遍自然是分析句子了,这时候以前看的长难句和单词就用到了,做完以

中国矿业大学 空间数据结构上机实验报告

《空间数据结构基础》上机实验报告(2010级) 姓名 班级 学号 环境与测绘学院 1.顺序表的定义与应用(课本P85习题) 【实验目的】 熟练掌握顺序表的定义与应用,通过上机实践加深对顺序表概念的理解。 【实验内容】

设有两个整数类型的顺序表A(有m个元素)和B(有n个元素),其元素均从小到大排列。试编写一个函数,将这两个顺序表合并成一个顺序表C,要求C的元素也从小到大排列。【主要代码】 #include//定义在头文件“SeqList.h”中 #include const int defaultSize=100; template class SeqList{ protected: T *data;//存放数组 int maxSize;//最大可容纳表象的项数 int Last;//当前已存表象的项数 void reSize(int newSize);//改变data数组空间大小 public: SeqList(int sz=defaultSize); SeqList(SeqList& L); ~SeqList(){delete[]data;} int Size() const{return maxSize;} int Length()const{return Last+1;} int Search(T& x)const; int Locate(int i) const; T getData(int i) const; bool setData(int i,T& x) {if(i>0&&i<=Last+1) data[i-1]=x;} bool Insert(int i,T& x); bool Remove(int i,T& x); bool IsEmpty() {return (Last==-1)?true:false;} bool IsFull() {return(Last==maxSize-1)?true:false;} void input(); void output(); SeqList operator=(SeqList& L); friend void rank(SeqList& L); friend void hebing(SeqList& LA,SeqList& LB); }; //构造函数,通过指定参数sz定义数组的长度 template SeqList::SeqList(int sz){ if(sz>0){ maxSize=sz; Last=-1; data=new T[maxSize];

数据结构实验报告-图的遍历

数据结构实验报告 实验:图的遍历 一、实验目的: 1、理解并掌握图的逻辑结构和物理结构——邻接矩阵、邻接表 2、掌握图的构造方法 3、掌握图的邻接矩阵、邻接表存储方式下基本操作的实现算法 4、掌握图的深度优先遍历和广度优先原理 二、实验内容: 1、输入顶点数、边数、每个顶点的值以及每一条边的信息,构造一个无向图G,并用邻接矩阵存储改图。 2、输入顶点数、边数、每个顶点的值以及每一条边的信息,构造一个无向图G,并用邻接表存储该图 3、深度优先遍历第一步中构造的图G,输出得到的节点序列 4、广度优先遍历第一部中构造的图G,输出得到的节点序列 三、实验要求: 1、无向图中的相关信息要从终端以正确的方式输入; 2、具体的输入和输出格式不限; 3、算法要具有较好的健壮性,对错误操作要做适当处理; 4、程序算法作简短的文字注释。 四、程序实现及结果: 1、邻接矩阵: #include #include #define VERTEX_MAX 30 #define MAXSIZE 20 typedef struct { int arcs[VERTEX_MAX][VERTEX_MAX] ; int vexnum,arcnum; } MGraph; void creat_MGraph1(MGraph *g) { int i,j,k; int n,m; printf("请输入顶点数和边数:"); scanf("%d%d",&n,&m); g->vexnum=n; g->arcnum=m; for (i=0;iarcs[i][j]=0;

2010年中国矿业大学会计学(学术型)考研真题

中国矿业大学(北京)会计学(学术型)2010年硕士研究生入学考试试题及试题解析 一、名词解释 1、交易性金融资产:交易性金融资产是指企业为交易目的而持有的债券投资、股票投资和基金投资。 2、公允价值:亦称公允市价、公允价格。熟悉市场情况的买卖双方在公平交易的条件下和自愿的情况下所确定的价格,或无关联的双方在公平交易的条件下一项资产可以被买卖或者一项负债可以被清偿的成交价格。 3、开办费:指企业在企业批准筹建之日起,到开始生产、经营之日止的期间发生的费用支出。包括筹建期人员工资、办公费、培训费、差旅费、印刷费、注册登记费以及不计入固定资产和无形资产购建成本的汇兑损益和利息支出。 4、可转换债券:可转换债券是债券的一种,它可以转换为债券发行公司的股票,通常具有较低的票面利率。从本质上讲,可转换债券是在发行公司债券的基础上,附加了一份期权,并允许购买人在规定的时间范围内将其购买的债券转换成指定公司的股票。 5、股票分割:股票分割又称股票拆细,即将一张较大面值的股票拆成几张较小面值的股票。 6、零基预算:是指在编制预算时对于所有的预算支出,均以零为基底,不考虑以往情况如何,从根本上研究分析每项预算有否支出的必要和支出数额的大小。 7、差量成本:也称差别成本、差等成本,是指两个方案的预计成本差异。在进行成本决策时,由于各个方案预计发生的成本不同,就产生了成本的差异。 8、作业动因:作业动因是指作业贡献于最终产品的方式与原因,是表示成本对象或者其他作业对于作业需求的强度和频率的最恰当的单一数量度量标准,它用来把作业成本分配到成本对象或者其他作业,它反映了产品消耗作业的情况。 9、盈亏临界点:盈亏临界点,是指企业收入和成本相等的经营状态,即边际贡献等于固定成本时企业所处的既不盈利又不亏损的状态。 10、标准成本法:是指以预先制定的标准成本为基础,用标准成本与实际成本进行比较,核算和分析成本差异的一种产品成本计算方法,也是加强成本控制、评价经济业绩的一种成本控制制度。

中国矿业大学数据结构课程设计报告

《空间数据结构基础》 课程实习报告(地信12级) 姓名朱红鑫 班级地信12-2 学号 07122960 环境与测绘学院

目录 实验一:C++面向对象程序设计基础 (2) 实验三:通讯簿管理(顺序表的应用) (6) 实验五:将中缀表达式转换为后缀表达式 (13) 实验七:二叉树的操作 (18) 实验九:字符串 (24)

1C++面向对象程序设计基础 【实验简介】学会用算法语言C++描述抽象数据类型,使用模板建立数据结构。理解数据结构的组成分为两部分,第一部分是数据集(数据元素),第二部分是在此数据集上的操作。从面向对象的观点看,这两部分代表了对象的属性和方法。掌握用C++描述数据结构的基本方法,即通过建立类来描述抽象数据类型。类的数据成员提供对象属性,成员函数提供操作方法,方法是公共接口,用户通过调用方法实现对属性的访问。 【实验内容】 1.定义三维空间的坐标点TPoint 2.描述三维空间的球TBall,实现其主要操作(如计算体积和表面积,输 出空间坐标等)。 【主要代码】 #include #include class TPoint { protected: double x; //虚拟类型的水平坐标值 double y; //虚拟类型的垂直坐标值 double z; //z坐标 public: TPoint(){x = 0; y = 0; z = 0; } //缺省构造函数 TPoint(double px, double py,double pz){x = px;y = py;z=pz;} //带参数的构造函数 void move(double mx,double my,double mz){x = mx;y = my;z=mz;} //移动位置(修改坐标值) void show(){cout<<"x="<n,&GA->e); printf ("请输入矩阵顶点信息:\n"); for(i = 0;in;i++) scanf("%s",&(GA->vex[i][0]),&(GA->vex[i][1])); for (i = 0;in;i++) for (j = 0;jn;j++) GA->edge[i][j] = 0; for (k = 0;ke;k++) { printf ("请输入第%d条边的顶点位置(i,j)和权值(用逗号隔开):",k+1); scanf ("%d,%d,%d",&i,&j,&w); GA->edge[i][j] = w; } return(GA); } void dfs(Graph *GA, int v) { int i; printf("%c%c\n",GA->vex[v][0],GA->vex[v][1]); visited[v]=1;

中国矿业大学863金融学考研真题

中国矿业大学 2004年硕士研究生入学考试试题(三小时) 科目代码:463 科目名称:金融学 一、名词解释(4分*5=20分) 1、金融工程 2、国际货币体系 3、表外业务 4、通货紧缩 5、同业拆借利率 二、简答(8分*6=48分) 1、决定利率水平的主要因素。 2、影响汇率变动的主要因素。 3、用交易成本论解释金融创新。 4、中央银行的基本职能 5、凯恩斯货币需求理论的主要内容和特点。 6、美国存款保险制度的主要内容。 三、论述(20分*3=60分) 1、参考下列背景材料阐述你对银行业的发展趋势的见解,并说明理由。 (1)曾康霖(西南财经大学教授)说:“银行的发展趋势是必然衰落。” 比尔盖茨说:“传统商业银行将是要在21世纪灭绝的一群恐龙。” 兹维博迪(波士顿大学金融学教授)说:“必须抛弃银行。” (2)1970年—1985年美国非金融机构外源融资结构是:贷

款61.9%,债券29.8%,股票2.1%,其它(政府贷款等)6.2%。 2、商业银行资产负债管理理论的发展过程。 3、货币政策传导机制理论的新进展。 四、计算(22分) 1、客户将现金10000元存入银行,设法定准备金率为5%,现金漏损率为5%,不考虑其他因素,请回答: (1)原始存款是多少?(4分) (2)银行系统可据以创造多少派生存款?(4分) 2、国际货币市场上9月份交割的欧元对美元期货在7月1日的交割价格是0.8600(即1欧元=0.8600美元)。到7月31日这些期货合同的价格变成了0.8800美元。您的公司于7月1日买入了8份欧元期货合同(每份欧元期货合同的标准数量是12.5万欧元),在7月31日出售了8份欧元期货合同。请问:这样产生的损益是多少美元?(10分) 3、投资者1994年12月1日用122元买入一张面值100元的1992年发行的五年期国库券,并持有到1996年12月1日以145元卖出,则该投资者持有期间收益率是多少?(4分) 中国矿业大学 2004年硕士研究生入学考试试题(三小时) 科目代码:463 科目名称:金融学 一、名词解释(4*5=20分) 1、金融风险 2、货币自由兑换 3、资产负债管理

数据结构图的遍历实验报告

实验项目名称:图的遍历 一、实验目的 应用所学的知识分析问题、解决问题,学会用建立图并对其进行遍历,提高实际编程能力及程序调试能力。 二、实验容 问题描述:建立有向图,并用深度优先搜索和广度优先搜素。输入图中节点的个数和边的个数,能够打印出用邻接表或邻接矩阵表示的图的储存结构。 三、实验仪器与设备 计算机,Code::Blocks。 四、实验原理 用邻接表存储一个图,递归方法深度搜索和用队列进行广度搜索,并输出遍历的结果。 五、实验程序及结果 #define INFINITY 10000 /*无穷大*/ #define MAX_VERTEX_NUM 40 #define MAX 40 #include #include #include #include

typedef struct ArCell{ int adj; }ArCell,AdjMatrix[MAX_VERTEX_NUM][MAX_VERTEX_NUM]; typedef struct { char name[20]; }infotype; typedef struct { infotype vexs[MAX_VERTEX_NUM]; AdjMatrix arcs; int vexnum,arcnum; }MGraph; int LocateVex(MGraph *G,char* v) { int c = -1,i; for(i=0;ivexnum;i++) if(strcmp(v,G->vexs[i].name)==0) { c=i; break;} return c;} MGraph * CreatUDN(MGraph *G)//初始化图,接受用户输入{ int i,j,k,w; char v1[20],v2[20]; printf("请输入图的顶点数,弧数:"); scanf("%d%d",&G->vexnum,&G->arcnum);

020104金融学专业

金融学专业 专业简介 学科:经济学 门类:经济学类 专业名称:金融学 本专业培养具备货币银行学、国际金融、证券、投资、保险等金融学方面的理论知识和业务技能,受到相关业务的基本训练,具有金融领域实际工作的基本能力,能在银行、证券、投资、保险及其他经济管理部门和企业从事相关工作的专门人才。本专业培养的是目前国民经济各个领域都相当急需的人才,属于热门专业。

专业信息 培养目标:本专业培养具备金融学方面的理论知识和业务技能,能在银行、证券、投资、保险及其他经济管理部门和企业从事相关工作的专门人才。 培养要求:本专业学生主要学习货币银行学、国际金融、证券、投资、保险等方面的基本理论和基本知识,受到相关业务的基本训练,具有金融领域实际工作的基本能力。毕业生应获得以下几方面的知识和能力: ◆掌握金融学科的基本理论、基本知识; ◆具有处理银行、证券、投资与保险等方面业务的基本能力; ◆熟悉国家有关金融的方针、政策和法规; ◆了解本学科的理论前沿和发展动态; ◆掌握文献检索、资料查询的基本方法,具有一定的科学研究和实际工作能力。 主干学科:经济学。 主要课程:政治经济学、西方经济学、财政学、国际经济学、货币银行学、国际金融管理、证券投资学、保险学、商业银行业务管理、中央银行业务、投资银行理论与实务等。 实践教学:包括课程实习、毕业实习等,一般安排6周。 修业年限:4年。 授予学位:经济学学士学位。 原专业名:货币银行学、国际金融、保险、投资经济(部分)。 就业数据

综合介绍 提起金融,人们往往想起金钱和银行,也有些人想起美国作家德莱塞的名著《金融家》。但金融的确切含义是什么呢?金融是货币流通和信用活动的总称。她是指以银行为中心的各种形式的信用活动,以及在信用基础上组织起来的货币资金的融通。金融业在世界各国都有悠久的历史,是商品货币关系发展的产物。在封建社会末期,商品经济发展到一定的水平后,货币兑换、保管与汇总等活动相继产生,这些是金融业的最初形态。在资本主义发展阶段,金融活动极大地推进了资本积累和集中的过程。在垄断阶段,金融资本控制了整个资本主义社会的经济命脉。中国在明末已出现银行的雏形——“银号”和“票号”。现在,已有完整的以中国人民银行为核心的社会主义金融体系,并在经济生活中发挥着重要作用。 现代金融业有两大趋势,一是网络化;一是国际化。由于技术创新的突飞猛进和网络的无限扩张,金融业进入了网络经济时代,世界变得越来越小,全球金融资本中只有2%的交易与贸易和生产有关,其余的大量交易都是脱离有形经济的虚拟网络交易,金融的网络化与金融的国际化密切相关,愈演愈烈。我国的金融业,已突破单一国内市场的局限,开始逐步汇入到世界金融市场的汪洋大海中。 现代金融学采用了定量分析的方法,如果考生具有较好的数学功底,在今后的专业学习中是很有利的。由于众所周知的“金融业人才高消费”,金融学的本科毕业生并不能显示出较大的专业优势,要想在金融业成就一番事业,学至本科还是远远不够的。 由于金融的网络化和国际化,金融学专业也显得非常新潮。毕业生适宜在银行、证券公司、投资公司以及其他经济管理部门和企业从事相关工作。 专业教育发展史 金融专业在国外的设立还是很早的。经过几个世纪的发展,外国出现了一大批著名的金融学院,如英国的伦敦经济学院、斯坦福沃顿商学院、哈佛大学,加州大学伯克利分校等。这些著名的金融学院聚集了许多世界著名的教授,为整个世界培养了众多的金融行业的精英。国内金融专业的设置是比较晚的。由于建国初期,中国实行了高度集中的计划经济体制,财政的地位空前提高,而银行体系处在附属的地位,所以金融专业在一开始并没有受到重视,也没有在各大高校设置。 改革开放以后,随着整个金融体系的改革,尤其是四大商业银行的建立,金融机构在全社会资金融通活动中所占有的地位不断提高,货币政策调控宏观经济的手段也日益重要。这个时候,金融专业在社会强烈的需求中诞生了。由于文化大革命对中国教育界的冲击,在70年代末各大高校相继复校开学的时候,

数据结构实验 - 图的储存与遍历

一、实验目的 掌握图这种复杂的非线性结构的邻接矩阵和邻接表的存储表示,以及在此两种常用存储方式下深度优先遍历(DFS)和广度优先遍历(BFS)操作的实现。 二、实验内容与实验步骤 题目1:对以邻接矩阵为存储结构的图进行DFS 和BFS 遍历 问题描述:以邻接矩阵为图的存储结构,实现图的DFS 和BFS 遍历。 基本要求:建立一个图的邻接矩阵表示,输出顶点的一种DFS 和BFS 序列。 测试数据:如图所示 题目2:对以邻接表为存储结构的图进行DFS 和BFS 遍历 问题描述:以邻接表为图的存储结构,实现图的DFS 和BFS 遍历。 基本要求:建立一个图的邻接表存贮,输出顶点的一种DFS 和BFS 序列。 测试数据:如图所示 三、附录: 在此贴上调试好的程序。 #include #include #include ????????????????=010******* 010101000100010A

#define M 100 typedef struct node { char vex[M][2]; int edge[M ][ M ]; int n,e; }Graph; int visited[M]; Graph *Create_Graph() { Graph *GA; int i,j,k,w; GA=(Graph*)malloc(sizeof(Graph)); printf ("请输入矩阵的顶点数和边数(用逗号隔开):\n"); scanf("%d,%d",&GA->n,&GA->e); printf ("请输入矩阵顶点信息:\n"); for(i = 0;in;i++) scanf("%s",&(GA->vex[i][0]),&(GA->vex[i][1])); for (i = 0;in;i++) for (j = 0;jn;j++) GA->edge[i][j] = 0; for (k = 0;ke;k++) { printf ("请输入第%d条边的顶点位置(i,j)和权值(用逗号隔开):",k+1); scanf ("%d,%d,%d",&i,&j,&w); GA->edge[i][j] = w; } return(GA); } void dfs(Graph *GA, int v) { int i; printf("%c%c\n",GA->vex[v][0],GA->vex[v][1]); visited[v]=1;

2020考研:金融专业的院校选择

【摘要】本文整理出了开设了金融专业的院校排名、分数线、报录比、考试科目等内容,备战2020考研金融专业的同学如果还没有决定要报考哪所学校,希望在对比院校的以上各项因素后,帮助你确定报考的院校。 一、学校排名 金融专业学硕: 【学科门类:02经济学;一级学科:0202应用经济学;专业名称:020204金融学】 金融专业专硕: 【学科门类:02经济学;一级学科:0251金融;专业名称:025100金融硕士】 ?17年底教育部公布了全国高校第四轮学科评估结果,其中一级学科0202应用经济评估中,“博士授权”的高校共66所,本次参评58所;部分具有“硕士授权”的高校也参加了评估;参评高校共计155所(注:评估结果相同的高校排序不分先后,按学校代码排列)。 0202应用经济评估结果如下: 学府考研

学府考研

学府考研

学府考研

注:在一级学科评估结果的基础上,以下是金融学和金融硕士的院校排名,来源于中国科教评价网。由于排名考查因素不同,此排名考生在择校时仅作为参考。 1、金融学学硕: 排名学校名称星级开此专业学校数 1 西南财经大学5★+ 188 2 中国人民大学5★+ 188 3 北京大学5★188 4 中央财经大学5★188 5 对外经济贸易大学5★188 6 南开大学5★188 7 山东大学5★188 8 吉林大学5★188 9 中南财经政法大学5★188 10 中山大学5★188 11 清华大学5★- 188 12 上海交通大学5★- 188 13 武汉大学5★- 188 14 复旦大学5★- 188 15 华中科技大学5★- 188 学府考研

中国矿业大学计算机科学与技术考研真题考研参考书

考研是什么?是对自己能力和水平的开发与预判,是对自己未来和梦想的坚持与执着,是对他人期盼与祝愿的回应与感恩。考研路上,大家的情况各不相同,但是遇到的问题都大同小异。考研最重要的一步是择校,考研注定是选择大于努力的。要选择学校、方法、方向,才能知道如何努力。中国矿业大学计算机科学与技术专业除去推免之外,只招收11名研究生。那么既然选择了中国矿业大学,这条考研路上,也要风雨兼程,砥砺前行。 中国矿业大学的计算机科学与技术专业考察科目为政治、英语一、数学一和专业课,而这些同样取决于你的选择。 政治方面,先告诉大家一个入手小窍门,从生活中积累经验,比如在成语中获取政治知识点:勿以恶小而为之,勿以善小而不为。其中蕴含的哲理可以理解为:在量变和质变的关系中,要分清是非,辨别善恶,权衡利弊。有益的事情应该持之以恒,促进质变的进行;有害的事情应该防微杜渐,阻止量变向质变的转化。另一个就是矛盾的主次在一定的条件下,可以互相转化。所以,要从生活中理解政治,也要关注时事,了解热点。那么在复习过程中,也要学以致用。先看其占比:马哲24%,毛中特30%,史纲14%,这样大家就可以看出重点所在了,而马哲、毛中特这两方面的基础知识理论都较强,基础牢固要依靠练习题目来搭配,才可以记忆深刻,可以选择李凡老师的教材,他属于预测型老师,压中题的概率极大,所以教材也会根据题目有所变动。做题的话,建议选择李凡老师的1000题,有基础有拔高,比较适合,先做一遍,大概了解,再做一遍,诱敌深入,第三遍,看错题,了解精髓;最后,也是最重要的,《政治新时器》建议背至少三遍。 英语的准备阶段,我建议把重难点放在平常,如果你是心血来潮想要考研,想要创造几个月成功通过考研的神话,我的建议是:少背单词,多做真题,培养语感,抓住技巧。当然《一本单词》可以背一下,打个单词基础。英语作为一门语言学科,培养语感是比较重要的,尤其是针对英语基础中下级别的同学,冲动考研的同学,背诵单词已经来不及了,把范文当作自己的救命稻草。靠人不如靠己,范文要选择历年真题中的阅读理解,因为这些文章里面的高频词语便是重中之重。除去阅读理解,英语中的重头戏就是作文了,选择作文模板明显的,有内容包含的,把它背下来,然后结合模板的优点,放上自己的想法,好词好句的背

数据结构实验七图的创建与遍历

实验七图的创建与遍历 实验目的: 通过上机实验进一步掌握图的存储结构及基本操作的实现。 实验内容与要求: 要求: ⑴能根据输入的顶点、边/弧的信息建立图; ⑵实现图中顶点、边/弧的插入、删除; ⑶实现对该图的深度优先遍历; ⑷实现对该图的广度优先遍历。 备注:单号基于邻接矩阵,双号基于邻接表存储结构实现上述操作。算法设计: #include #include #define INFINITY 32767 #define MAX_VEX 20 //最大顶点个数#define QUEUE_SIZE (MAX_VEX+1) //队列长度 using namespace std; bool *visited; //访问标志数组 //图的邻接矩阵存储结构 typedef struct{ char *vexs; //顶点向量 int arcs[MAX_VEX][MAX_VEX]; //邻接矩阵 int vexnum,arcnum; //图的当前顶点数和弧数 }Graph; //队列类 class Queue{ public: void InitQueue() { base=(int *)malloc(QUEUE_SIZE*sizeof(int)); front=rear=0; } void EnQueue(int e) { base[rear]=e; rear=(rear+1)%QUEUE_SIZE; } void DeQueue(int &e) { e=base[front]; front=(front+1)%QUEUE_SIZE; } public: int *base; int front; int rear; }; //图G中查找元素c的位置 int Locate(Graph G,char c) { for(int i=0;i

中国矿业大学一级刊物目录(新版)

中国矿业大学一级刊物目录 一、哲学 哲学研究北京中国社会科学院哲学研究所哲学动态北京中国社会科学院哲学研究所自然辩证法研究北京中国自然辩证法研究会自然辩证法通讯北京中国科学院 民主与法制北京中国法学会 现代法学重庆西南政法大学法学上海华东政法大学中外法学北京北京大学 法律科学西安西北政法学院

比较法研究北京中国政法大学比较法研究所法学家北京中国人民大学法学院 法学评论武汉武汉大学 三、政治学 政治学研究北京中国社会科学院政治学研究所中国行政管理北京中国行政管理学会 四、社会学 中国社会科学北京中国社会科学院 社会学研究北京中国社会科学院社会学研究所中国人口科学北京中国社会科学院人口研究所青年研究北京中国社会科学院社会学研究所

人口研究北京中国人民大学人口研究所 人口与经济北京首都经贸大学 五、教育学 教育研究北京中央教育研究所比较教育研究北京北京师范大学 教育与经济武汉中国教育经济学研究会,华中师范 中国运动医学杂志北京中国体育科学学会运动医学学会天津体育学院学报天津天津体育学院 八、中国语言文学 九、外国语言文学 十、新闻传播学

编辑学刊上海上海市编辑学会 中国广播电视学刊北京中国广播电视学会, 广播电影电视部政策研究室中国记者北京新华社 新闻战线北京人民日报社 新闻与传播研究北京中国社会科学院新闻研究所 北京电影学院学报北京北京电影学院中国音乐学北京中国艺术研究院音乐研究所音乐研究北京人民音乐出版社 音乐艺术上海上海音乐学院 中国摄影北京中国摄影家协会 十二、历史学

历史研究北京中国社会科学杂志社 中国史研究北京中国社会科学院历史研究所近代史研究北京中国社会科学院近代史研究所世界历史北京中国社会科学院世界历史研究所史学理论研究北京中国社会科学院世界历史研究所等中共党史研究北京中共中央党史研究室 数学进展北京北京大学数学科学学院 数学杂志武汉湖北省数学学会 系统科学与数学北京中国科学院系统科学研究所运筹学杂志上海中国运筹学会 数学物理学报武汉中国科学院武汉数学物理研究所

数据结构实验报告--图实验

图实验 一,邻接矩阵的实现 1.实验目的 (1)掌握图的逻辑结构 (2)掌握图的邻接矩阵的存储结构 (3)验证图的邻接矩阵存储及其遍历操作的实现 2.实验内容 (1)建立无向图的邻接矩阵存储 (2)进行深度优先遍历 (3)进行广度优先遍历 3.设计与编码 MGraph.h #ifndef MGraph_H #define MGraph_H const int MaxSize = 10; template class MGraph { public: MGraph(DataType a[], int n, int e); ~MGraph(){ } void DFSTraverse(int v); void BFSTraverse(int v); private: DataType vertex[MaxSize]; int arc[MaxSize][MaxSize]; int vertexNum, arcNum; }; #endif MGraph.cpp #include using namespace std; #include "MGraph.h" extern int visited[MaxSize]; template MGraph::MGraph(DataType a[], int n, int e)

{ int i, j, k; vertexNum = n, arcNum = e; for(i = 0; i < vertexNum; i++) vertex[i] = a[i]; for(i = 0;i < vertexNum; i++) for(j = 0; j < vertexNum; j++) arc[i][j] = 0; for(k = 0; k < arcNum; k++) { cout << "Please enter two vertexs number of edge: "; cin >> i >> j; arc[i][j] = 1; arc[j][i] = 1; } } template void MGraph::DFSTraverse(int v) { cout << vertex[v]; visited[v] = 1; for(int j = 0; j < vertexNum; j++) if(arc[v][j] == 1 && visited[j] == 0) DFSTraverse(j); } template void MGraph::BFSTraverse(int v) { int Q[MaxSize]; int front = -1, rear = -1; cout << vertex[v]; visited[v] = 1; Q[++rear] = v; while(front != rear) { v = Q[++front]; for(int j = 0;j < vertexNum; j++) if(arc[v][j] == 1 && visited[j] == 0){ cout << vertex[j]; visited[j] = 1;

相关文档
相关文档 最新文档