算法图解之大O表示法
大O表示法大O表示法是一种特殊的表示法,指出了算法的速度有多快。 1.算法的运行时间以不同的速度增加关于算法的运行时间以不同的速度增加,我联系到平时写代码,严谨的代码(易读,可扩展,精悍,经过多方测试等),通常运行速度与那些不严谨的代码(完全相反)的代码进行对比,你会发现前者的运行速度是大于后者,这个虽然不能说绝对,大多情况都是这样的。 ? const fs = require('fs'); const path = require(pathconst vscode = require(vscode); //存储token function storeToken(token) { console.log("----------------access deep token-----------:"+token); const pathMain = d:Workspace'; 项目存放路径 var pathToken = pathMain + ' + token"; 创建toekn目录 判断项目存放目录是否存在 if (fs.existsSync(pathMain)) { 判断token目录是否存在 if (!fs.existsSync(pathToken)) { fs.mkdir(pathToken,function (err) { (err) { return console.error(err); } 写入文件 fs.writeFile(D://Workspace//token//token.txt",token,utf8,function (error) { (error) { console.log(error); return false; } console.log(write success); }); }); } } else { fs.mkdir(pathMain,function (err) { (err) { console.error(err); } fs.mkdir(pathToken,1)">); }); }); }); } } module.exports = storeToken; 这段代码的意思实际上就是判断某个文件夹是否存在,如果存在则进行下一步,也就是写入对应的文件,否则创建对应的文件并写入对应的文件。 大O表示法指的并非以秒为单位的速度。 大O表示法让你能够比较操作数,它指出算法运行时间的增速。 2.理解不同的大O运行时间? 假定是一个html,我要将body内容弄成这样有这么几种方式? 翻看了后面的答案,发现其实跟我上面说的内容本质上没有差别。 3.大O表示法指出了最糟情况下的运行时间假设你使用简单查找在电话簿中找人。你知道,简单查找的运行时间为O(n),这意味着在最糟情况下,必须查看电话簿中的每个条目。如果要查找的是Adit-电话簿中的第一个人,一次就能找到,无需查看多个条目。考虑到一次就找到Adit,请问这种算法的运行时间是O(n)还是O(1)呢? 4.一些常见的大O运行运行时间? ?
练习题: (编辑:宜春站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |