编程题
5.1
#include <iostream>
#define PI 3.14159
using namespace std;
//重载函数
double getGirth(double length, double width)
{
return 2 * (length + width);
}
//重载函数
double getGirth(double radius)
{
return PI * radius * radius;
}
void main( )
{
cout<<getGirth(12, 10)<<endl;
cout<<getGirth(2)<<endl;
}
5.2
#include <iostream>
#include <string>
using namespace std;
class Person
{
protected:
string name;
int age;
public:
Person(){}
Person(string n, int a):name(n), age(a){};
~Person(){}
void display()
{
cout<<"姓名:"<<name<<endl;
cout<<"年龄:"<<age<<endl;
}
};
class Student : public Person
{
protected:
int sid;
public:
Student(int id, string n, int a)
{
name = n;
age =a;
sid = id;
}
~Student(){}
void display()
{
cout<<"姓名:"<<name<<endl;
cout<<"年龄:"<<age<<endl;
cout<<"学号:"<<sid<<endl;
}
};
class Teacher : public Person
{
protected:
string title;
public:
Teacher(string t, string n, int a)
{
name = n;
age =a;
title = t;
}
~Teacher(){}
void display()
{
cout<<"姓名:"<<name<<endl;
cout<<"年龄:"<<age<<endl;
cout<<"职称:"<<title<<endl;
}
};
void main( )
{
Person p = Person("张三其", 25);
p.display();
Student s = Student(1001, "李师煊", 19);
s.display();
Teacher t = Teacher("副教授", "王五", 39);
t.display();
}
2. 什么叫结构化的算法为什么要提倡结构化的算法
结构化的算法:由三种基本结构构成的算法结构是结构化的算法。
因为结构化的算法不存在无规律的转向,只在本基本结构内才允许存在分支和向前或向后的跳转。不会出现死循环,使算法的质量得到保证和提高,所以,要提倡结构化的算法。
3. 数据结构算法编程题,删除带头结点的单链表中最大元素或最小元素
//删除单链表中最大元素
Del-max(link a){
int tmp;
element *p;
element *max;
p=a; //指针,用于遍历链表,取数与当前最大结点值比较
max=a; //指针,用于记录最大元素所在位置(未考虑有多个最大元素)
tmp=p->data; //变量,用于记录当前最大结点值
while(a->next!=null){
p=p->next;
if(p->data>tmp){ 、//如果当前指针所指结点值大于当前tmp所保留的值,则记录
max=p; //当前位置(放入到max),记录当前最大值(放入tmp)
tmp=p->data;
} //end of if
} //end of while
tmp=max->next->data; //一次遍历后max指针所指结点就是最大元素,删除之。。。
max->data=tmp;
max->next=max->next->next; //删除方法能看懂么?好好思考。。。
}//end of Del-max
4. 什么是数据结构和算法分析在编程里起到什么作用
编程是为了解决问题,这些问题并表都是数值计算,其所处理的数据并不都是数值,但计算机所能处理的最终是0和1的二进制串,所以需要把问题中的数据用计算机能处理的方式来表示,这就需要数据结构。
简单的说,数据结构是数据在计算机中的表示方式,有逻辑结构和物理结构之分,如逻辑上同样的队列,物理上可以是顺序存储,也可以是链式存储。
通俗的讲,算法就是解决问题的方法,比如同样的排序,可以用冒泡排序、插入排序等,不同的算法可以达到相同的目标,但是效率可能有所不同。
5. 算法 数据结构编程(java语言)
private void sort(int[] list)
{
int[] sortlist=new int[21];
for(int i=1;i<=20;i++)
sortlist[i]=-1;
for(int i=0;i<list.Length;i++)
{
sortlist[list[i]]=list[i];
}
for(int i=0;i<sortlist.Length;i++)
{
if(sortlist[i]!=-1)
{
输出sortlist[i];
}
}
因为已知最大值,所以遍历算法计算次数为常数,所以算法复杂度为1
6. 什么是数据结构什么是算法算法与程序有什么关系
在计算机编程领域,数据结构与算法的应用是无处不在。比如图像视频处理、数据压缩、数据库、游戏开发、操作系统、编译器、搜索引擎、AR、VR、人工智能、区块链等领域,都是以数据结构与算法为基石。
数据结构与算法属于开发人员的基本内功,也能训练大脑的思考能力,掌握一次,终生受益。扎实的数据结构与算法功底,能让我们站在更高的角度去思考代码、写出性能更优的程序,能让我们更快速地学习上手各种新技术(比如人工智能、区块链等),也能让我们敲开更高级编程领域的大门。
数据结构与算法更是各大名企面试题中的常客,如果不想被行业抛弃、想进入更大的名企、在IT道路上走得更远,掌握数据结构与算法是非常有必要。
7. 编程是算法与数据结构是不是不同语言是不一样的
数据结构对于各编程语言都是可以用的。
数据结构重在思想,每种语言的数据结构只是根据算法的需要进行改动,在表现形式上大同小异,数据结构是为了对数据进行操作而设计的结构。
8. 网络与编程中常用的算法与数据结构有哪些
算法就是计算机处理解决问题的计算机能理解的方法。
比如算一个阶乘 , 计算机的算法就是写一个循环,从高到底, 一直乘下去,直到 1 为止。
复杂的算法比如一个强连通带权网络,求两点间的最短路径,这个很有用啊....比如采用广度优先算法,或深度优先算法
数据结构指数据在计算机中存储存在的方式。
比如文件在硬盘中,有二进制,文本等形式存放, 程序中的一组数字可能放在数组里面,也可能在栈里面,也肯能在链表里面
9. 怎么将数据结构的算法变为程序
数据结构说的都是些算法,编程的总体思路..每一个算法思想对应着一段具体的函数实现,将基本的写出来后,再编写main()函数,将实际问题转换过来,在main()函数里再调用一个一个函数(算法实现),通过正确的参数传递和语句,这就是一个完整的C/C++程序