传智播客C和C++与数据结构基础讲义
传智扫地僧
1 、 数据结构概念
1 .1数据结构相关概念
1 .1 .1疑惑
1 、我学完了C语言可是现在感觉还是写不出代码。
2、 为什么会有各种各样的程序存在
3、程序的本质是什么
程序是为了具体问题而存在的程序需要围绕问题的解决进行设计同
一个问题可以有多种解决方案如何追求程序的“性价比”是否有可
量化的方法判别程序的好坏
1 .1 .2数据结构起源
计算机从解决数值计算问题到解决生活中的问题现实生活中的问题涉及不同个体间的复杂联系需要在计算机程序中描述生活中个体间的联系数据结构主要研究非数值计算程序问题中的操作对象以及它们之间的关系
不是研究复杂的算法
1 .1 .3数据结构中的基本概念
数据-程序的操作对象用于描述客观事物 (inta, intb,)
数据的特点
可以输入到计算机
可以被计算机程序处理
数据是一个抽象的概念将其进行分类后得到程序设计语言
中的类型。如 int float char等等
数据元素组成数据的基本单位
数据项一个数据元素由若干数据项组成
数据对象-性质相同的数据元素的集合 (比如数组链表)
struct_MyTeach er tArray[30]; // 数据对象
strcpy(t1 .name, "name"); //数据项strcpy(t1 .addr, "addr"); //数据项strcpy(t 1 .ti le, "add r"); //数据项
tl .age=1;
数据元素之间不是独立的存在特定的关系这些关系即结构
数据结构指数据对象中数据元素之间的关系
女口数组中各个元素之间存在固定的线性关系
编写一个“好”的程序之前必须分析待处理问题中各个对象的特性以及对象之间的关系。
1 .1 .4数据的逻辑结构
指数据元素之间的逻辑关系。即从逻辑关系上描述数据它与数据的存储无关是独立于计算机的。逻辑结构可细分为4类
1 .1 .5数据的物理结构
1 .1 .6数据的运算
答在数据的最常用的数据运算有5种:
1 .2、算法1 .2.1算法概念
算法是特定问题求解步骤的描述
在计算机中表现为指令的有限序列
算法是独立存在的一种解决问题的方法和思想。对于算法而言语言并不重要重要的是思想。
122算法和数据结构区别
数据结构只是静态的描述了数据元素之间的关系
高效的程序需要在数据结构的基础上设计和选择算法===
程序=数据结构+算法
总结
算法是为了解决实际问题而设计的
数据结构是算法需要处理的问题载体
数据结构与算法相辅相成
1 .2.3算法特性
输入
算法具有0个或多个输入
输出
算法至少有1个或多个输出
有穷性
算法在有限的步骤之后会自动结束而不会无限循环确定性
算法中的每一步都有确定的含义不会出现二义性可行性
算法的每一步都是可行的
124算法效率的度量1 、事后统计法
long sum3(int n)
{long ret=0;if(n>0)
{ret=(1 +n) *n/2;}return ret;
}intmain()
{printf("%d\n",sum 1(100));printf("%d\n",sum2(100));printf("%d\n",sum3(100));return 0;
int i=0;int j=0;ints=0;
看到群里网友们在讨论由于不清楚的原因,有同学的网站无法访问。他的网站是没有用HTTPS的,直接访问他的HTTP是无法访问的,通过PING测试可以看到解析地址已经比较乱,应该是所谓的DNS污染。其中有网友提到采用HTTPS加密证书试试。因为HTTP和HTTPS走的不是一个端口,之前有网友这样测试过是可以缓解这样的问题。这样通过将网站绑定设置HTTPS之后,是可以打开的,看来网站的80端口出现问题,而...
农历春节将至,腾讯云开启了热门爆款云产品首单特惠秒杀活动,上海/北京/广州1核2G云服务器首年仅38元起,上架了新的首单优惠活动,每天三场秒杀,长期有效,其中轻量应用服务器2G内存5M带宽仅需年费38元起,其他产品比如CDN流量包、短信包、MySQL、直播流量包、标准存储等等产品也参与活动,腾讯云官网已注册且完成实名认证的国内站用户均可参与。活动页面:https://cloud.tencent.c...
DiyVM 香港沙田机房,也是采用的CN2优化线路,目前也有入手且在使用中,我个人感觉如果中文业务需要用到的话虽然日本机房也是CN2,但是线路的稳定性不如香港机房,所以我们在这篇文章中亲测看看香港机房,然后对比之前看到的日本机房。香港机房的配置信息。CPU内存 硬盘带宽IP价格购买地址2核2G50G2M1¥50/月选择方案4核4G60G3M1¥100/月选择方案4核8G70G3M4¥200/月选择...