清晰的规划 如果没有清晰的规划,人会感觉每天都很忙,但是却在瞎忙活,凡事达不到自己的预期,就会使人迷茫,心态低迷,影响一个人的阶段成长。 我现在每天都在看书写日记,看书能让人心静下来; 然后每天都在锻炼增肌,身体是革命的本钱; 最近也在做事情,明年应该能看到效果,会有一个很可观的副业收入; 好好准备,明年准备进大厂; 快速积累第一笔财富,为以后创业资金提供血液。
清晰的规划 如果没有清晰的规划,人会感觉每天都很忙,但是却在瞎忙活,凡事达不到自己的预期,就会使人迷茫,心态低迷,影响一个人的阶段成长。 我现在每天都在看书写日记,看书能让人心静下来; 然后每天都在锻炼增肌,身体是革命的本钱; 最近也在做事情,明年应该能看到效果,会有一个很可观的副业收入; 好好准备,明年准备进大厂; 快速积累第一笔财富,为以后创业资金提供血液。
这一届的年轻人,被ofo小黄车坑过押金,被P2P坑过本金,出了社会,还被蛋壳公寓收割。 实锤,我住的蛋壳公寓因为拖欠房东房租,房东已经下了通牒,2020年11月30号之前必须搬出去。跟天斗,算了。 蛋壳公寓的模式 大部分人都是刚毕业的大学生,我是为了省钱,被坑是这样的。 一次性交租一年,有两个月的优惠,条件是需要用微众银行的贷款,微众银行一次性把一年房租打到蛋壳公寓的账上,蛋壳公寓按月给房东钱,蛋壳公寓一次性就能收到11个月房租和一个月的押金。蛋壳公寓用这种模式疯狂扩张,人多了,就形成了一个巨大的资金池。蛋壳公寓拿…
明星开演唱会,赚的是粉丝的钱;网红直播,赚的也是粉丝的钱;粉丝的喜欢、崇拜,让他们有了人设,有了个人IP,就可以收割了,镰刀嚯嚯。这个世界从来都是这样,有钱人赚穷人的钱。 想要打造个人IP、人设,需要勇敢走向大众,通过自己的努力,将自己包装、推广出去,流量到了一定级别,这时候就可以伸出你的镰刀开始收割了。 今天想拍短视频,明天想写文章,后天想卖煎饼果子,这都是不专一的表现。 普通人想要咸鱼翻身、改变命运,没有资源、人源,只有靠时间,用时间堆,用时间积累,认准一个点,奋斗十年以上才可能有所成就。一生很短,一生只做一件…
排序算法是《数据结构与算法》中最基本的算法之一。 排序算法可以分为内部排序和外部排序,内部排序是数据记录在内存中进行排序,而外部排序是因排序的数据很大,一次不能容纳全部的排序记录,在排序过程中需要访问外存。常见的内部排序算法有:插入排序、希尔排序、选择排序、冒泡排序、归并排序、快速排序、堆排序、基数排序等。用一张图概括: 关于时间复杂度 平方阶 (O(n2)) 排序 各类简单排序:直接插入、直接选择和冒泡排序。 线性对数阶 (O(nlog2n)) 排序 快速排序、堆排序和归并排序; O(n1+§)) 排序,§ 是介…
10大经典排序算法——系列文章 冒泡排序 选择排序 插入排序 希尔排序 归并排序 快速排序 堆排序 计数排序 桶排序 基数排序 基数排序是一种非比较型整数排序算法,其原理是将整数按位数切割成不同的数字,然后按每个位数分别比较。由于整数也可以表达字符串(比如名字或日期)和特定格式的浮点数,所以基数排序也不是只能使用于整数。 1. 基数排序 vs 计数排序 vs 桶排序 基数排序有两种方法: 这三种排序算法都利用了桶的概念,但对桶的使用方法上有明显差异案例看大家发的: 基数排序:根据键值的每位数字来分配桶; 计数排序:…
10大经典排序算法——系列文章 冒泡排序 选择排序 插入排序 希尔排序 归并排序 快速排序 堆排序 计数排序 桶排序 基数排序 桶排序是计数排序的升级版。它利用了函数的映射关系,高效与否的关键就在于这个映射函数的确定。为了使桶排序更加高效,我们需要做到这两点: 在额外空间充足的情况下,尽量增大桶的数量 使用的映射函数能够将输入的 N 个数据均匀的分配到 K 个桶中 同时,对于桶中元素的排序,选择何种比较排序算法对于性能的影响至关重要。 1. 什么时候最快 当输入的数据可以均匀的分配到每一个桶中。 2. 什么时候最慢…
10大经典排序算法——系列文章 冒泡排序 选择排序 插入排序 希尔排序 归并排序 快速排序 堆排序 计数排序 桶排序 基数排序 计数排序的核心在于将输入的数据值转化为键存储在额外开辟的数组空间中。作为一种线性时间复杂度的排序,计数排序要求输入的数据必须是有确定范围的整数。 1. 动图演示 2. JavaScript 代码实现 function countingSort(arr, maxValue) { var bucket = new Array(maxValue+1), sortedIndex = 0; arrL…
10大经典排序算法——系列文章 冒泡排序 选择排序 插入排序 希尔排序 归并排序 快速排序 堆排序 计数排序 桶排序 基数排序 堆排序(Heapsort)是指利用堆这种数据结构所设计的一种排序算法。堆积是一个近似完全二叉树的结构,并同时满足堆积的性质:即子结点的键值或索引总是小于(或者大于)它的父节点。堆排序可以说是一种利用堆的概念来排序的选择排序。分为两种方法: 大顶堆:每个节点的值都大于或等于其子节点的值,在堆排序算法中用于升序排列; 小顶堆:每个节点的值都小于或等于其子节点的值,在堆排序算法中用于降序排列; …
10大经典排序算法——系列文章 冒泡排序 选择排序 插入排序 希尔排序 归并排序 快速排序 堆排序 计数排序 桶排序 基数排序 快速排序是由东尼·霍尔所发展的一种排序算法。在平均状况下,排序 n 个项目要 Ο(nlogn) 次比较。在最坏状况下则需要 Ο(n2) 次比较,但这种状况并不常见。事实上,快速排序通常明显比其他 Ο(nlogn) 算法更快,因为它的内部循环(inner loop)可以在大部分的架构上很有效率地被实现出来。 快速排序使用分治法(Divide and conquer)策略来把一个串行(list…
10大经典排序算法——系列文章 冒泡排序 选择排序 插入排序 希尔排序 归并排序 快速排序 堆排序 计数排序 桶排序 基数排序 归并排序(Merge sort)是建立在归并操作上的一种有效的排序算法。该算法是采用分治法(Divide and Conquer)的一个非常典型的应用。 作为一种典型的分而治之思想的算法应用,归并排序的实现由两种方法: 自上而下的递归(所有递归的方法都可以用迭代重写,所以就有了第 2 种方法); 自下而上的迭代; 在《数据结构与算法 JavaScript 描述》中,作者给出了自下而上的迭代…