算法传智播客c和c 与数据结构基础讲义

传智播客  时间:2021-01-30  阅读:()

传智播客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;

提速啦(24元/月)河南BGP云服务器活动 买一年送一年4核 4G 5M

提速啦的来历提速啦是 网站 本着“良心 便宜 稳定”的初衷 为小白用户避免被坑 由赣州王成璟网络科技有限公司旗下赣州提速啦网络科技有限公司运营 投资1000万人民币 在美国Cera 香港CTG 香港Cera 国内 杭州 宿迁 浙江 赣州 南昌 大连 辽宁 扬州 等地区建立数据中心 正规持有IDC ISP CDN 云牌照 公司。公司购买产品支持3天内退款 超过3天步退款政策。提速啦的市场定位提速啦主...

欧路云:美国CUVIP线路10G防御,8折优惠,19元/月起

欧路云新上了美国洛杉矶cera机房的云服务器,具备弹性云特征(可自定义需要的资源配置:E5-2660 V3、内存、硬盘、流量、带宽),直连网络(联通CUVIP线路),KVM虚拟,自带一个IP,支持购买多个IP,10G的DDoS防御。付款方式:PayPal、支付宝、微信、数字货币(BTC USDT LTC ETH)测试IP:23.224.49.126云服务器 全场8折 优惠码:zhujiceping...

易探云服务器怎么过户/转让?云服务器PUSH实操步骤

易探云服务器怎么过户/转让?易探云支持云服务器PUSH功能,该功能可将云服务器过户给指定用户。可带价PUSH,收到PUSH请求的用户在接收云服务器的同时,系统会扣除接收方的款项,同时扣除相关手续费,然后将款项打到发送方的账户下。易探云“PUSH服务器”的这一功能,可以让用户将闲置云服务器转让给更多需要购买的用户!易探云服务器怎么过户/PUSH?1.PUSH双方必须为认证用户:2.买家未接收前,卖家...

传智播客为你推荐
秦殇内存修改器秦殇1.30内存修改器Vista不能用吗??!非主流桌面背景图片大家都哪里找的那么个性的电脑壁纸,燃气热水器和电热水器哪个好燃气热水器和电热水器哪个好莫代尔和纯棉哪个好请问莫代尔棉和纯莫代尔哪个更好?江门旅游景点哪个好玩的地方江门有什么地方好玩的?唱K 行街 免答三国游戏哪个好玩三国类的游戏哪些好玩点英语词典哪个好英语词典哪种更好啊?网页传奇哪个好玩有什么好玩的传奇类网页游戏?无纺布和熔喷布口罩哪个好一次性口罩的熔喷布和KN95的熔喷布有什么不同?视频软件哪个好安卓系统在线看视频软件哪个好
vps优惠码 域名交易网 bluevm 512m 国外在线代理 刀片服务器是什么 卡巴斯基试用版 独享主机 ebay注册 论坛主机 中国linux 浙江服务器 ledlamp 注册阿里云邮箱 网页加速 美国迈阿密 中国联通宽带测试 免费主页空间 小夜博客 美国asp空间 更多