C语言版本数据结构01:简介

23 篇文章 0 订阅
19 篇文章 0 订阅

前言:从今天开始大家请原谅我不能再按照有顺序的章节来给大家更新知识博客了,是本人有原因,由于我在上学,自身学习编程的进度也在不断前进,大家学过编程的都知道学编程不是一蹴而就的事,所以有一些内容被落下,日常生活的作业和琐事不断,甚至我学习的内容也已经打破了正常的进度,所以给大家更新博客的速度肯定受了影响(哭),本来按照这个进度正常情况下应该更新到数据结构的栈和队列,并且C语言一些必刷的题都应该讲到,但是现在C语言的知识还有一些没有结尾....我的错,我承认,所以以后的博客我会慢慢更新,但是不会再按顺序,不会再在博客标题前加上日期,可能这篇博客是某天早就写好的草稿,但竟然在某几个星期后发出。

好了,讲完这些我们进入到今天的正题吧,我们C语言的学习也就告了一段落,我们要更进一步,大家之前肯定都听说过数据结构,应该是是每个编程初学小白必学的课程,我们学习的方向是C语言版本的数据结构,当然也有java版本的数据机构,因为本人主攻C/C++方向,所以肯定以C++为主,以后可能也会给大家更新一些java的知识,当然这肯定要在我已经更新完C/C++所有内容之后的事情了,其实不用大家说我都知道肯定要好久以后了....

1. 什么是数据结构?

数据结构(Data Structure)是计算机存储、组织数据的方式,指相互之间存在一种或多种特定关系的数据元素的集合,往往同高效的检索算法和索引技术有关。大多数数据结构都由数列、记录、可辨识联合、引用等基本类型构成。通常情况下,精心选择的数据结构可以带来更高的运行或者存储效率。数据结构意味着接口或封装,一个数据结构可被视为两个函数之间的接口,或者是由数据类型联合组成的存储内容的访问方法封装。

大家要试着理解一下这些概念哈,不要一看见概念就躲,大白话固然易懂但是可能会忽略很多必要的知识点,但是我还是要给大家解释一下,所谓数据结构就是内存存储数据的基本常用的机构,学习数据结构的目的也是掌握这些数据在内存中存储的模式,不过是在不懂概念也没事,在学习的过程中肯定就慢慢的理解了。

2.什么是算法?

算法(Algorithm)是指解题方案的准确而完整的描述,是一系列解决问题的清晰指令,算法代表着用系统的方法描述解决问题的策略机制。也就是说,能够对一定规范的输入,在有限时间内获得所要求的输出。如果一个算法有缺陷,或不适合于某个问题,执行这个算法将不会解决这个问题。不同的算法可能用不同的时间、空间或效率来完成同样的任务。一个算法的优劣可以用空间复杂度时间复杂度来衡量。

所谓算法就是处理事情的方法,那既然是方法了也就有好也有坏,所以我们学习算法的目的就是优化我们的代码的执行效率,在既高效又正确的情况下解决问题,这就是对于所有问题的解决办法。

3.数据结构和算法的重要性

数据结构有多重要呢?我们可以去牛客网上看一些互联网公司的真题,几乎都会考到一些顺序表链表二叉树的编程题目,它对于程序员的思维和知识的掌握可以起到一个很好的考核作用,其实在这里讨论数据结构的重要性有点外行了,就好像在学习数学的过程中问了一嘴函数重要吗?可能这个例子并不恰当,但是大家一定要打起精神,数据结构很重要!!因为上升到数据结构就不止学习知识了,我们新的知识已经学的差不多了,主要是用这些知识来实现这些结构,所以需要大家对C语言的结构体,指针,函数等都需要很好的掌握,否则无法学习数据结构。

4.如何学好数据结构和算法

方法只有一个:写代码。没有捷径可走,你只看到了编程大牛在面对你不会的问题时的迎刃而解,你却没看到他没日没夜地和代码死斗的场景,所以能力都是练出来的,没有几个月几个星期学好编程的,就算给你灌输完了知识,你面对代码还是下不了手,好比让自己打了几个月的篮球就让你去NBA一场比赛拿个三四十分。这就本末倒置了,我们既然花时间来学习了为何不给自己一个满意的交代呢?混谁都会,可是最终吃亏的可是自己。

好了,关于新的板块我就介绍到这里,接下来我们就开始数据结构的学习了,编译环境不需要更改,还是熟悉的test.c,还是熟悉的int mian,但是内容将完全不一样,大家做好准备。

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值