标签分类
当前位置:首页 > 程序设计电子书 > C语言电子书网盘下载
C/C++常用算法手册 C/C++常用算法手册
shangmw

shangmw 提供上传

资源
34
粉丝
3
喜欢
169
评论
9

    C/C++常用算法手册 PDF 高清版

    C语言电子书
    • 发布时间:

    给大家带来的一篇关于C语言相关的电子书资源,介绍了关于C/C++、算法手册方面的内容,本书是由中国铁道出版社出版,格式为PDF,资源大小22.5 MB,唐峻 李淳编写,目前豆瓣、亚马逊、当当、京东等电子书综合评分为:7.2,更多相关的学习资源可以参阅 程序设计电子书C/C++视频、等栏目。

  • C/C++常用算法手册 PDF 下载
  • 下载地址:https://pan.baidu.com/s/1iwp5kx-QkTRbUWY-2tXqxw
  • 分享码:urk5
  • C/C++常用算法手册 PDF

    C/C++常用算法手册》分3篇,共13章,“第1篇算法基本篇”详细介绍了算法简述,重中之重剖析了数据结构和基础算法观念;“第2篇算法基础运用篇”详尽解读了算法在排列、搜索、数值计算、数论、經典趣题游戏中的运用;“第3篇算法高級运用篇”解读了算法的某些高級运用技术性,包含在密码学和数据编码/解压缩中的运用。

    电子信息技术的发展趋势和普及化不但更改了大家的衣食住行和游戏娱乐方法,也更改了大家的工作中方法,这在其中更为关键的就是心理学知识技术性。当代的设计方案大多数根据代码编程交到电子计算机来进行,在其中算法具有了尤为重要的功效。能够绝不生动地说,算法是任何编程设计的生命和基本。《C/C++常用算法手册》知识结构图遮盖全方位、构造分配紧凑型、解读详尽、实例丰富多彩。全书对每1个知识结构图都得出了相对的算法及运用实例。尽管这种事例全是以c語言来撰写的,可是算法并不是限于c語言。假如用户选用别的计算机语言,比如c++、c撑、VB、Java等,依据其英语的语法文件格式开展适度的改动就能。

    《C/C++常用算法手册》关键定坐落于有必须c/c++编程语言基本、想根据学习培训算法与数据结构提高程序编写水准的用户,也可做为具备必须程序编写工作经验的程序猿及其大中专院校孩子学习数据结构和算法的教材。

    目录

    • 第1篇 算法基础篇
    • 第1章 算法概述
    • 第2章 数据结构
    • 第3章 基本算法思想
    • 第2篇 算法基本应用篇
    • 第4章 排序算法
    • 第5章 查找算法
    • 第7章 复杂的数值计算算法
    • 第8章 经典数据结构问题
    • 第9章 数论问题
    • 第10章 算法经典趣题
    • 第11章 游戏中的算法
    • 第3篇 算法高级应用篇
    • 第12章 密码学算法
    • 第13章 压缩与解压缩算法

    上一篇:Visual C# 2010从入门到精通  下一篇:JavaScript忍者秘籍

    展开 +

    收起 -

    C语言相关电子书
    学习笔记
    网友NO.758657

    JS实现的RC4加密算法示例

    本文实例讲述了JS实现的RC4加密算法。分享给大家供大家参考,具体如下: RC4是一种简单的对称加密算法,在文本加密,通信加密等场景应用非常广泛。 在Web中可以用来对本地存储数据进行加密,比如存储cookie中的用户名和密码,敏感信息等。 以下是本人根据其思想基于JS实现的算法。 //var ctext = rc4("我是明文","我是密码");//var text = rc4(ctext, "我是密码");function rc4(data, key) { var seq = Array(256); //int var das = Array(data.length); //code of data for (var i = 0; i 256; i++) { seq[i] = i; var j = (j + seq[i] + key.charCodeAt(i % key.length)) % 256; var temp = seq[i]; seq[i] = seq[j]; seq[j] = temp; } for (var i = 0; i data.length; i++) { das[i] = data.charCodeAt(i) } for (var x = 0; x das.length; x++) { var i = (i + 1) % 256; var j = (j + seq[i]) % 256; var temp = seq[i]; seq[i] = seq[j]; seq[j] = temp; var k = (seq[i] + (seq[j] % 256)) % 256; das[x] = String.fromCharCode(das[x] ^ seq[k]); } return das.join('');} PS:关于加密解密感兴趣的朋友还可以参考本站在线工具: 在线RC4加密/解密工具: http://tools.jb51.net/password/rc4_encode 文字在线加密解密工具(包含AES、DES、RC4等): http://tools.jb51.net/password/txt_encode 在线编码转换工具(utf-8/utf-32/Punycode/Base64): http://tools.jb51.net/transcoding/decode_encode_tool BASE64编码解码工具: http://tools.jb51.net/transcoding/base64 在线MD5/hash/SHA-……

    网友NO.584744

    JavaScript实现数组全排列、去重及求最大值算法示例

    本文实例讲述了JavaScript实现数组全排列、去重及求最大值算法。分享给大家供大家参考,具体如下: 1、全排列(递归) function permutation(arr){ if (arr.length == 1) return arr; else if (arr.length == 2) return [[arr[0],arr[1]],[arr[1],arr[0]]]; else { var temp = []; for (var i = 0; i arr.length; i++) { var save = arr[i]; arr.splice(i, 1);//取出arr[i] var res = permutation(arr);//递归排列arr[0],arr[1],...,arr[i-1],arr[i+1],...,arr[n] arr.splice(i, 0, save);//将arr[j]放入数组,保持原来的位置 for (var j = 0; j res.length; j++) { res[j].push(arr[i]); temp.push(res[j]);//将arr[j]组合起来 } } return temp; }} 2、数组去重 方法一: function norepeat(contents) { var norepeatContents = []; for (var i = 0; i contents.length; i++) { if(norepeatContents.indexOf(contents[i]) == -1) norepeatContents.push(contents[i]); } return norepeatContents;} 方法二: function norepeat(contents) { var norepeatContents = [], hash = {}; for (var i = 0; i contents.length; i++) { if(!hash[contents[i]]) { norepeatContents.push(contents[i]); hash[contents[i]] = true; } } return norepeatContents;} 3、求数组最大数 方法一: function findMax(arr) { var max = arr[0]; for (var i = 1; i arr.length; i++) { if (arr[i] max) max = arr[i]; } return max;} 方法二: function findMax(arr) { return Math.max.apply(Math, arr);} PS:这里再为大家提供几款相关工具供大家参考使用: 在线去除重复项工具: http://……

    网友NO.159381

    基于JavaScript实现的顺序查找算法示例

    本文实例讲述了基于JavaScript实现的顺序查找算法。分享给大家供大家参考,具体如下: 对于查找数据来说,最简单的方法就是从列表的第一个元素开始对列表元素逐个进行判断,直到找到了想要的结果。这个方法叫做顺序查找,有时候也被叫做线性查找。它属于暴力查找技巧的一种。 顺序查找实现起来非常简单,代码如下: function generalSearch(arr,data){//普通的顺序查找,就是遍历一遍看是否找到 for(var i=0;iarr.length;i++){ if(arr[i]==data){ return true; } } return false;} 那么这样会不会效率很低呢?对于未排序的数据集来说,当被查到的数据位于数据集的起始位置时,查找是最快、最成功的。通过将成功找到的元素置于数据集的起始位置,可以保证在以后的操作中元素能被更快的查找到,代码如下: function betterSearch(arr,data){//自组织查找,将查找率高的依次往前移 for(var i=0;iarr.length;i++){ if(arr[i]==data){ if(i0){ swap(arr,i,i-1);//如果找到则将查找的值和前一个值交换位置 } return true; } } return false;}function swap(arr,i,j){//交换位置 temp=arr[i]; arr[i]=arr[j]; arr[j]=temp;} 那有没有更加好的方法呢?在查找的世界中,有一个“80-20原则”,指的是对某一数据集执行的80%的查找操作都是对其中20%的数据元素进行查找。所以我们可以将查找到且处于后80%的元素放在起始……

    网友NO.183166

    JavaScript数据结构与算法之基本排序算法定义与效率比较【冒泡、选择、插入排序】

    本文实例讲述了JavaScript数据结构与算法之基本排序算法定义与效率比较。分享给大家供大家参考,具体如下: javascript数据结构与算法--基本排序算法(冒泡、选择、排序)及效率比较 一、数组测试平台 javascript数据结构与算法--基本排序(封装基本数组的操作),封装常规数组操作的函数,比如:插入新数据,显示数组数据,还有交换数组元素等操作来调用不同的排序算法 function CArray(numElements) { this.dataStore = []; this.pos = 0;//是一个索引值,默认为0,从第一个开始 this.numElements = numElements;//是保存所有的数组元素 this.insert = insert;//向数组中插入一个元素的方法 this.toString = toString;//显示数组中所有元素 this.clear = clear;//清空数组数据 this.setData = setData;//生成了存储在数组中的随机数字 this.swap = swap;//交换数组中两个元素的位置 this.bubbleSort = bubbleSort; /*将传入的数组,存储在datastore中*/ for (var i = 0; i numElements.length; ++i) { this.dataStore[i] = numElements[i]; }}function setData() { for (var i = 0; i this.numElements; ++i) { this.dataStore[i] = Math.floor(Math.random() * (this.numElements+1)); }}function clear() { for (var i = 0; i this.dataStore.length; ++i) { this.dataStore[i] = 0; }}function insert(element) { this.dataStore[this.pos++] = element;}function toString() { var retstr = ""; for (var i = 0; i this.dataStore.length; ++i)……

    Copyright 2018-2019 xz577.com 码农之家

    版权责任说明