当前位置:   article > 正文

算法学习笔记——算法和数据结构简介

算法学习笔记——算法和数据结构简介

算法和数据结构简介

硬计算类算法:

  • 精确求解
  • 大厂算法和数据结构笔试、面试题、acm比赛或者和acm形式类似的比赛,考虑的都是硬计算类算法
  • 但是某些问题使用硬计算类的算法,可能会让计算的复杂度较高

软计算类算法:

  • 更注重逼近解决问题,而不是精确求解,计算时间控。当一个计算量很大时你不可能去算出结果,这个是后就算出当前的最优解。
  • 比如:模糊逻辑、神经网络、进化计算、概率理论、支持向量机、群体智能

注意:

  • 硬计算类算法是所有程序员岗位都会考,任何写代码的工作都会用到的。
  • 但是算法工程师除了掌握硬计算类的算法之外,还需要掌握软计算类的算法
  • 这个两个名词都不是计算机科学或者算法中的标准术语

连续结构:

  • 连续结构可以理解为:在内存空间中逻辑上是连续的一整块空间的结构,但实际上可能会有分页等情况
  • 数组为什么通过下标查询(寻址) 的时间差不多,就是因为是连续结构,数组每个格子都是固定长度的,只有根据磁头算出偏移量,就能根据对应的偏移量就能快速寻址了
  • int 类型,32位比特连续靠着一起组成的空间,long 类型,64位比特连续靠着一起组成的空间,任何简单类型都是连续结构

跳转结构:

  • 内存中一个小空间由数值和下一个小空间的内存地址组成,这些小空间随机的分布在内存中不同区域,通过指针相互关联,形成跳转结构,链表就是跳转结构。

注意:

  • 任何数据结构都一定是这两个结构拼出来的!没有例外!
声明:本文内容由网友自发贡献,转载请注明出处:【wpsshop博客】
推荐阅读
相关标签
  

闽ICP备14008679号