从计数排序说起 计数排序是一种非基于元素比较的排序算法,而是将待排序数组元素转化为计数数组的索引值,从而间接使待排序数组具有顺序性。 计数排序的实现一般有两种形式:基于辅助数组和基于桶排序。 基于辅助数组 整个过程包含三…
标签:算法
【校招】互联网技术面试LeetCode刷题指南
从19年秋招的情况来看,互联网公司对于技术序列的朋友要求越来越高,尤其是在代码能力上,越来越多的公司开始在面试中考察LeetCode的easy、medium题型,对于优秀的同学还会考察到hard级别。 也曾经有段子说,程…
线性结构的应用-队列
定义 队列和栈一样,也是一种操作受限的线性表 只允许在表的前端(front)进行删除操作,而在表的后端(rear)进行插入操作 进行插入操作的端称为队尾,进行删除操作的端称为队头 特性 先进先出(FIFO—first i…
九种排序算法的可视化及比较
排序是工作和生活中非常常见的一个问题。现在已经有比较成熟的排序技术,被广泛地应用于各种程序语言或数据库中。不同的排序算法有不同的性能和适用场景,下面的视频对比了 9 种排序算法的性能表现。排序算法依次为选择排序、希尔排序…
翻译 | 像 JavaScript 一样思考
原文链接: https://davidwalsh.name/thinking-javascript 几天前我在一个专题讨论会讲 JavaScript,午饭时候一个学员跑来向我请教一个 JS 难题,而它确实把我给难住了。他…
刚刚,吴恩达讲了干货满满的一节全新AI课,全程手写板书
夏乙 编译整理量子位 出品 | 公众号 QbitAI 给吴恩达三块白板和一支马克笔,听他讲一节精彩的课。 刚刚,在O’reilly举办的AI Conference上,吴恩达做了个25分钟的演讲,主题依然是“AI is t…
Leetcode - Sliding Window Maximum
My code: public class Solution { public int[] maxSlidingWindow(int[] nums, int k) { if (nums == null || nums.l…
我们和优秀工程师的差距在哪儿
一道 Google 面试题告诉你如何破局而出,快速成长为优秀工程师。 关注微信公众号:BaronTalk,更多精彩好文等着你! 我相信每个工程师都曾怀揣一个成为技术大牛的梦想,可是真正走向技术大牛这条路的少之又少。工作中…
javascript背包问题详解
01背包问题 引子 打算好好学一下算法,先拿背包问题入手。但是网上许多教程都是C++或java或python,大部分作者都是在校生,虽然算法很强,但是完全没有工程意识,全局变量满天飞,变量名不明所以。我查了许多资料,花了…
10大排序算法之【直接插入排序】
这段时间真是恶心,老师没事搞一个查课机制,限制了老夫的自由。哎,说多了都是泪,不能好好的撸算法了。。。。 在去签到的前20分钟简单描述一下直接插入排序的思想: 从第2个数开始,依次向前比较寻找自己合适的位置,找到后赋值即…
哈希表(HashTable)的构造方法和冲突解决
关于哈希表里面的这些个定址和解决冲突的方法名词我一直记不住,今天闲下来就花点时间来学习之、记录之、分享之。 哈希函数构造方法 构造哈希函数的目标是使得到的哈希地址尽可能均匀地分布在n个连续内存单元地址上,同时使计算过程尽…
谈谈字符串翻转
题图来自 Unsplash 字符串翻转作为算法题已经是一个不能再基础的问题了,无非就是逆序遍历、双指针遍历、递归,代码也能分分钟写出来: void strrev(char *str) { size_t start = 0…