算法和数据结构
哈娄
前端开发
展开
-
4种排序方法
1.冒泡排序 依次比较相邻的两个元素, 如果后一个小于前一个则交换,这样从头到尾一次,就将最大的放到末尾代码实现:function bubbleSort(arr) { var len = arr.length; for(var i = 0; i< len.length; i++) { for(var j = 0; j < len-1-...原创 2018-10-10 15:49:11 · 321 阅读 · 0 评论 -
数据结构和算法系列二 结构分析1
数组优点:数组通过下标取值进行操作时,效率是很高的,能直接定位到具体位置拿出来给你操作修改。链表的线性查找对此的话效率就很低,很不适合缺点:数组在做头部插入或者删除操作的时候,性能都比较低。链表结构对此性能就很好插入,他把把插入位置的后面元素都先往后移动,空出来的位置给要插入的元素 删除,他把该位置的元素删除后,后面的元素都往前移动...原创 2021-04-01 17:52:33 · 135 阅读 · 0 评论 -
数据结构和算法系列一 概述
数据结构数据结构就是存储和组织数据的方式, 不同的数据结构有不同的特性(有的查询快,有的头和尾部插入快...等)算法算法就是解决问题的步骤逻辑/方法生活中使用的数据结构和算法:快递员送快递例子。如果他每家都亲自去送就很慢,于是他们会放在一个集中保管的地方,让大家去取,他会按照大家的楼单元进行划分区域摆放,然后再根据单号/姓名/手机号之类的进行摆放, 来取的时候直接快速的定位到属于你的快递...原创 2021-03-27 10:25:13 · 154 阅读 · 0 评论 -
算法题面试--全排列 + 八皇后
要求:给定一个没有重复数字的序列,返回其所有可能的全排列。例如:输入: [1,2,3]输出:[ [1,2,3], [1,3,2], [2,1,3], [2,3,1], [3,1,2], [3,2,1]]方案:使用(回溯算法+深度优先搜索)进行实现let permutation = function(nums) { let res = []; let obj = {}; function revise(path) { ...原创 2020-08-26 22:53:56 · 220 阅读 · 0 评论 -
算法复杂度计算方法 , 排序算法和数据结构简介
一 时间复杂度和空间复杂度1.1时间复杂度一个算法的时间复杂度反映了程序运行程序开始到结束所需要的时间。把算法中基本操作重复执行的次数 (频度) 作为算法的时间复杂度没有循环语句记作O(1),也称为常数阶。 只有一重循环,则算法的基本操作的执行频度与问题规模n呈线性增大关系,记作O(n),也叫线性阶常见的时间复杂度有:O(1): Constant Complexity: Con...原创 2019-09-21 10:33:15 · 416 阅读 · 0 评论