
算法
文章平均质量分 52
yusirxiaer
前端移动端一路の风景
展开
-
JS笔试题-使用方法链的计算器
将 result 除以给定的数字 value ,并返回更新后的 Calculator 对象。- 计算 result 的幂,指数为给定的数字 value ,并返回更新后的 Calculator 对象。- 将给定的数字 value 与 result 相加,并返回更新后的 Calculator 对象。- 从 result 中减去给定的数字 value ,并返回更新后的 Calculator 对象。- 将 result 乘以给定的数字 value ,并返回更新后的 Calculator 对象。原创 2023-07-19 22:32:18 · 130 阅读 · 0 评论 -
二分查找算法
二分查找的概念在于,定义一个数组arr,找到当前数组中点middle,如果要查找的值小于当前middle索引对应的值,则将缩小范围,继续求缩小范围的middle值,接着继续比较,不断缩小范围,最后找到该值;的数组,而原生的indexOf则适合。二分查找法是速度较快的搜索算法。查到一个有序数组中,某一项的索引。二分查找适合顺序存储,随机存储并且数据量不大。原创 2023-02-26 20:55:32 · 182 阅读 · 0 评论 -
汉诺塔递归算法
起源: 汉诺塔(又称河内塔)问题是源于印度一个古老传说的益智玩具。大梵天创造世界的时候做了三根金刚石柱子,在一根柱子上从下往上按照大小顺序摞着64片黄金圆盘。大梵天命令婆罗门把圆盘从下面开始按大小顺序重新摆放在另一根柱子上。并且规定,在小圆盘上不能放大圆盘,在三根柱子之间一次只能移动一个圆盘。抽象为数学问题: 如下图所示,从左到右有A、B、C三根柱子,其中A柱子上面有从小叠到大的n个圆盘,现要求将A柱子上的圆盘移到C柱子上去,期间只有一个原则:一次只能移到一个盘子且大盘子不能在小盘子上面,求原创 2021-12-19 20:10:12 · 252 阅读 · 0 评论 -
js实用算法
判断文本是否为回文定义:如果将一个文本翻转过来,能和原文本完全相等,那么就可以称之为“回文”。方法一(字符串、数组内置方法)123456789101112131415/** 判断文字是否为回文* @param {string|number} val 需要判断的文字* @return {boolean} bool 是否为回文 */function isPalindrome1(val){ // 允许输...原创 2018-04-13 17:25:53 · 289 阅读 · 0 评论 -
前端 crypto-js aes 加解密
背景前段时间公司做项目,该项目涉及到的敏感数据比较多,经过的一波讨论之后,决定前后端进行接口加密处理,采用的是 AES + BASE64 算法加密~网上关于 AES 对称加密的算法介绍看上一篇!具体实现其实搞懂了是怎么一回事,做起来还是挺简单的,因为库都是现成的,我们只需要会用就好啦,这里我在推荐一篇理解AES加密解密的使用方法,加深大家对 AES 算法的理解~这里我以 Vue 作为例子,其他的也...原创 2018-04-13 17:04:12 · 1406 阅读 · 1 评论 -
AES加密算法的学习笔记
AES简介高级加密标准(AES,Advanced Encryption Standard)为最常见的对称加密算法(微信小程序加密传输就是用这个加密算法的)。对称加密算法也就是加密和解密用相同的密钥,具体的加密流程如下图: 下面简单介绍下各个部分的作用与意义:明文P没有经过加密的数据。密钥K用来加密明文的密码,在对称加密算法中,加密与解密的密钥是相同的。密钥为接收方与发送方协商产生,但不可以直接在网...原创 2018-04-13 16:00:14 · 778 阅读 · 0 评论 -
javascript-排序算法
插入排序算法描述: 1. 从第一个元素开始,该元素可以认为已经被排序 2. 取出下一个元素,在已经排序的元素序列中从后向前扫描 3. 如果该元素(已排序)大于新元素,将该元素移到下一位置 4. 重复步骤 3,直到找到已排序的元素小于或者等于新元素的位置 5. 将新元素插入到该位置后 6. 重复步骤 2~5现有一组数组 arr = [5, 6, 3,原创 2017-07-28 17:33:22 · 277 阅读 · 0 评论 -
Base64 算法原理,以及编码、解码【加密、解密】 介绍
Base64编码,是我们程序开发中经常使用到的编码方法。它是一种基于用64个可打印字符来表示二进制数据的表示方法。它通常用作存储、传输一些二进制数据编码方法!也是MIME(多用途互联网邮件扩展,主要用作电子邮件标准)中一种可打印字符表示二进制数据的常见编码方法!它其实只是定义用可打印字符传输内容一种方法,并不会产生新的字符集!有时候,我们学习转换的思路后,我们其实也可以结合自己的实际需要,构造一些转载 2016-11-21 14:58:38 · 433 阅读 · 0 评论 -
iOS 二叉树相关算法实现
什么是二叉树?在计算机科学中,二叉树是每个节点最多有两个子树的树结构。通常子树被称作“左子树”和“右子树”,左子树和右子树同时也是二叉树。二叉树的子树有左右之分,并且次序不能任意颠倒。二叉树是递归定义的,所以一般二叉树的相关题目也都可以使用递归的思想来解决,当然也有一些可以使用非递归的思想解决,我下面列出的一些算法有些采用了递归,有些是非递归的。什么是二叉排序树?二叉排序树转载 2016-11-21 14:55:05 · 747 阅读 · 0 评论 -
MD5算法原理
MD5(单向散列算法)的全称是Message-Digest Algorithm 5(信息-摘要算法),经MD2、MD3和MD4发展而来。MD5算法的使用不需要支付任何版权费用。 MD5功能: 输入任意长度的信息,经过处理,输出为128位的信息(数字指纹); 不同的输入得到的不同的结果(唯一性); 根据128位的输出结果不可能反推出输入的信息(不可逆);转载 2016-11-21 14:52:43 · 284 阅读 · 0 评论