【算法与数学】
文章平均质量分 53
算法与数据结构:程序=算法+数据结构
rtoax
行百里者半九十
展开
-
SHA-3的获胜者:keccak - 在 3GPP TS 35.231、FIPS 202 和 SP 800-185 中标准化
https://keccak.team/keccak.html目录技术细节标准实例Keccak是一种通用的加密函数。最著名的是散列函数,但它也可用于身份验证、(经过身份验证的)加密和伪随机数生成。它的结构是极其简单的海绵结构,内部使用了创新的Keccak-f 密码排列。在被选为 SHA-3 竞赛的获胜者后,Keccak已在移动电话 (TUAK) 的3GPP TS 35.231以及 NIST 标准FIPS 202和SP 800-185 中进行了标准化。因此,它受到了广泛的公众监督和第三方.翻译 2021-07-01 13:38:16 · 338 阅读 · 0 评论 -
地震射线追踪与有限差分正演模拟小软件
https://github.com/Rtoax/Seismic-Processing原创 2021-06-18 21:49:11 · 710 阅读 · 0 评论 -
Abbreviated biography of Jon Claerbout
Abbreviated biography of Jon Claerbout "Claerbout教授的简历"Websithttp://sepwww.stanford.edu/data/media/public/sep/prof/bio.htmlEducationEducation= (M.I.T., B.S. physics, 1960; M.S. 1963 geophysics; Ph.D. ...翻译 2018-06-17 19:15:52 · 516 阅读 · 0 评论 -
VTI介质Thomsen参数关于入射角的敏感性曲线
简单做个备份VTI介质ADCIGs中剩余曲率根据角度的变化可以进一步分析得出反演策略,根据相速度公式求解的深度残差关于Thomsen参数的偏导数:#include<stdio.h>#include<stdlib.h>#include<math.h>float deltaz(float v, float e, float d, float theta){...原创 2018-05-15 10:22:36 · 1016 阅读 · 0 评论 -
Java实现Lagan法射线追踪(lagan.java)
import java.io.*;class laganRayTracing{ private float pi = 3.141592653f; private int nx,nz,nshot,nray,ngrid; private float dx,dz,s,dangle,fangle; private float[] v原创 2017-10-12 21:07:00 · 1153 阅读 · 0 评论 -
laplace_filter.c (@Copyright (C) 2004 University of Texas at Austin: 2-D Laplacian operator)
/* 2-D finite-difference Laplacian operation. */#include#include#include#includevoid laplac2_lop(int adj, int nz, int nx, float *in, float *out)/**/{ int iz,ix,j; for (ix=0; ix < nx;转载 2017-10-12 20:28:27 · 397 阅读 · 0 评论 -
三维平滑
#include#include#include#include#include "/home/Toa/hc/cjbsegy.h"#include "/home/Toa/hc/fft.c"#include "/home/Toa/hc/alloc.c"#include "/home/Toa/hc/complex.c"void main(){ float ***vel; in原创 2017-09-09 12:08:28 · 1210 阅读 · 0 评论 -
IQ数据简介:I/Q Data
I:in-phase 表示同相Q:quadrature 表示正交,与I相位差90度。IQ调制就是数据分为两路,分别进行载波调制,两路载波相互正交。I是in-phase(同相), q是 quadrature(正交)。转载 2020-10-12 17:00:16 · 20768 阅读 · 4 评论 -
最小二乘法简图
原创 2020-04-04 11:54:40 · 1660 阅读 · 0 评论 -
C语言实现高斯随机信号-浮点信号
#include <string.h>#include <stdlib.h>#include <math.h>float crtl_rand_gauss(void) { float v1,v2,s; do { v1 = 2.0 * ((float) rand()/RAND_MAX) - 1; v2 ...原创 2020-04-03 22:02:53 · 471 阅读 · 0 评论 -
图论:柯尼斯堡桥问题、艾科西亚游戏
图论是与线连接的点的网络有关的数学分支。的主题图论起源于休闲数学问题(参见数字游戏),但它已发展成为数学研究的重要领域,并应用于化学,运筹学,社会科学和计算机科学。图论的历史可以追溯到1735年,当时瑞士数学家莱昂哈德·欧拉(Leonhard Euler)解决了柯尼斯堡桥问题。柯尼斯堡(Königsberg)桥梁问题是一个古老的难题,它涉及到是否有可能在横跨一条穿过岛屿的叉形河上的七座桥梁中的每一条上找到一条路径的可能性,但又不会跨过任何一座桥梁。欧拉认为没有这样的道路。他的证明仅涉及桥梁的物...翻译 2020-10-31 11:46:55 · 977 阅读 · 0 评论 -
gc:C语言的垃圾回收库-中文
Table of Contentsgc:标记并清除C的垃圾回收致谢文档概述快速开始下载,编译和测试基本用法核心API启动,停止,暂停,恢复和运行GC内存分配和释放辅助功能基本概念数据结构垃圾收集可达性标记扫描算法寻找根源深度优先递归标记将寄存器转储到堆栈中Sweeping-扫地《gc:C语言的垃圾回收库-英文》gc:标记并清除C的垃圾回收gc是保守的,线程局部的,按标记清除的垃圾收集器的实现。该实施方式提供标准的..翻译 2020-10-17 21:47:27 · 1891 阅读 · 0 评论 -
gc:C语言的垃圾回收库-英文
GitHub:gc:C语言的垃圾回收库gc: mark & sweep garbage collection for Cgc is an implementation of a conservative, thread-local, mark-and-sweepgarbage collector. The implementation provides a fully functional replacementfor the standard POSIX malloc(), calloc.原创 2020-10-17 21:36:41 · 614 阅读 · 0 评论 -
JVM 垃圾回收算法机制及其实现原理
前言对于 JVM 来说,我们都不陌生,其是 Java Virtual Machine(Java 虚拟机)的缩写,它也是一个虚构出来的计算机,是通过在实际的计算机上仿真模拟各种计算机功能来实现的。JVM 有自己完善的硬件架构,如处理器、堆栈等,还具有相应的指令系统,其本质上就是一个程序,当它在命令行上启动的时候,就开始执行保存在某字节码文件中的指令。Java 语言的可移植性就是建立在 JVM 的基础之上的,任何平台只要装有针对于该平台的 Java 虚拟机,字节码文件(.class)就...转载 2020-10-17 21:28:07 · 617 阅读 · 0 评论 -
哈希函数(Hash Functions - 散列函数)的基本介绍(SHA-2,SHA-256,MD-5,Scrypt,BCrypt等)
Hash,一般翻译做散列、杂凑,或音译为哈希,是把任意长度的输入(又叫做预映射pre-image)通过散列算法变换成固定长度的输出,该输出就是散列值。这种转换是一种压缩映射,也就是,散列值的空间通常远小于输入的空间,不同的输入可能会散列成相同的输出,所以不可能从散列值来确定唯一的输入值。简单的说就是一种将任意长度的消息压缩到某一固定长度的消息摘要的函数。原创 2020-10-11 21:23:12 · 5242 阅读 · 7 评论 -
Zlib压缩算法:LZ77、LZ78、霍夫曼编码、滑动窗口、Rabin-Karp算法、哈希链、I/O缓冲区
zlib是一个免费的开源软件库,用于无损数据压缩和减压。它是由Jean-loup Gailly(压缩)和Mark Adler(解压缩)用C语言编写的。zlib的第一个版本于1995年5月发布。Jean-loupGailly和Mark Adler也为gzip(GNU zip)。在后台,gzip使用zlib库。迄今为止,zlib主要由Mark Adler维护,其最新更新和版本均可在GitHub上找到。Mark Adler还积极参与Stack Overflow,以回答有关zlib和gzip的技术问题。翻译 2020-10-09 21:45:23 · 10814 阅读 · 3 评论 -
zlib-1.2.11手册
https://www.zlib.net/manual.html1.2.11版相对于1.2.10具有以下关键改进:修复从窗口拉出最后一个块时缩小存储的错误 允许立即进行deflateParams更改,然后再进行任何deflate输入由于错误修复,任何1.2.9或1.2.10的安装应立即替换为1.2.11。1.2.10版对1.2.9进行了以下关键改进:修复deflate_stored()中零长度输入的错误 修复gzwrite.c中产生损坏的gzip文件的错误1.2.9版对1.2.8..翻译 2020-10-09 21:00:53 · 1555 阅读 · 6 评论 -
模式搜索的KMP算法详解与C语言代码实现
Knuth-Morris-Pratt 字符串查找算法,简称为 “KMP算法”,常用于在一个文本串S内查找一个模式串P 的出现位置,这个算法由Donald Knuth、Vaughan Pratt、James H. Morris三人于1977年联合发表,故取这3人的姓氏命名此算法。翻译 2020-09-27 20:50:06 · 686 阅读 · 1 评论 -
关于布隆过滤器的所有信息:利用Hash实现的索引方案
如果想要判断一个元素是不是在一个集合里,一般想到的是将所有元素保存起来,然后通过比较确定。链表,树等等数据结构都是这种思路. 但是随着集合中元素的增加,我们需要的存储空间越来越大,检索速度也越来越慢(O(n),O(logn))。不过世界上还有一种叫作散列表(又叫哈希表,Hash table)的数据结构。它可以通过一个Hash函数将一个元素映射成一个位阵列(Bit array)中的一个点。这样一来,我们只要看看这个点是不是1就可以知道集合中有没有它了。这就是布隆过滤器的基本思想。翻译 2020-09-27 20:13:30 · 862 阅读 · 2 评论 -
负载均衡器如何在服务器之间分配客户端流量?
https://kemptechnologies.com/load-balancer/load-balancing-algorithms-techniques/有许多技术和算法可用于智能地平衡服务器池之间的客户端访问请求。选择的技术将取决于所请求的服务或应用程序的类型以及请求时网络和服务器的状态。下面概述的方法将结合使用,以确定服务新请求的最佳服务器。当前对负载均衡器的请求级别通常确定使用哪种方法。当负载较低时,一种简单的负载平衡方法就足够了。在高负载时,将使用更复杂的方法来确保请求的均匀分配.原创 2020-09-27 17:46:34 · 797 阅读 · 0 评论 -
数据结构可视化网址
https://www.cs.usfca.edu/~galles/visualization/Algorithms.htmlData Structure VisualizationsCurrently, we have visualizations for the following data structures and algorithms:Basics Stack: Array Implementation Stack: Linked List Implementation Qu原创 2020-09-27 13:14:34 · 383 阅读 · 0 评论 -
哈希算法简介
哈希算法RToax2020年9月哈希算法(Hash 算法,Hash 算式,散列算法,消息摘要算法)1. 什么是哈希算法哈希算法将任意长度的二进制值映射为较短的固定长度的二进制值,这个小的二进制值称为哈希值。哈希值是一段数据唯一且极其紧凑的数值表示形式。如果散列一段明文而且哪怕只更改该段落的一个字母,随后的哈希都将产生不同的值。要找到散列为同一个值的两个不同的输入,在计算上是不可能的,所以数据的哈希值可以检验数据的完整性。一般用于快速查找和加密算法。2. 哈希算法的特点哈希表是根据设定的原创 2020-09-11 13:15:39 · 2940 阅读 · 1 评论 -
十大排序算法:冒泡排序、选择排序、插入排序、希尔排序、归并排序、快速排序、堆排序、计数排序、桶排序、基数排序
本系列算法整理自:https://github.com/hustcc/JS-Sorting-Algorithm同时也参考了维基百科做了一些补充。排序算法是《数据结构与算法》中最基本的算法之一。排序算法可以分为内部排序和外部排序,内部排序是数据记录在内存中进行排序,而外部排序是因排序的数据很大,一次不能容纳全部的排序记录,在排序过程中需要访问外存。常见的内部排序算法有:插入排序、希尔排序、选择排序、冒泡排序、归并排序、快速排序、堆排序、基数排序等。用一张图概括:关于时间复杂度...转载 2020-09-01 08:50:01 · 1508 阅读 · 9 评论 -
DPDK无锁队列rte_ring相关代码及示例程序(rte_ring.h,rte_ring.c,main.c,makefile)
目录rte_ring.hrte_ring.cmain.cmakefile推荐阅读:【共享内存】基于共享内存的无锁消息队列设计:https://rtoax.blog.csdn.net/article/details/101508279 DPDK ring库:环形缓冲区的解剖:https://rtoax.blog.csdn.net/article/details/107614630 DPDK单生产者入队单消费者出队:https://rtoax.blog.csdn.net/articl原创 2020-08-24 17:37:52 · 1737 阅读 · 2 评论 -
DPDK ring库:环形缓冲区的解剖
目录ring库FreeBSD *中的Ring实施参考Linux *中的无锁环形缓冲区附加功能名称用例环形缓冲区的解剖单一生产者入队单一消费者出队多个生产者入队模数32位索引生产者/消费者同步模式MP / MC(默认一项)SP / SCMP_RTS / MC_RTSMP_HTS / MC_HTS环窥API参考资料ring库环允许管理队列。除了具有无限大小的链表之外,rte_ring具有以下属性:先进先出 最大大小是固定的,对翻译 2020-07-27 16:43:47 · 2435 阅读 · 1 评论 -
用DPDK rte_ring实现多进程间通信
F-Stack是多进程架构,去除了进程间资源共享来达到更高的性能,但还是有部分控制信息需要在进程间同步,使用rte_ring让多个进程间的通信变得十分简单。 rte_ring在F-Stack中主要用于:1.各个进程间ARP包的广播2.KNI的转发3.与工具(sysctl等)进行通信。rte_ring是一个用CAS实现的无锁FIFO环形队列,支持多消费者/生产者同时出入队列,常用于多线程/多进程之间的通信。具体原理可以查看DPDK官方文档或者阅读源码,本文主要是介绍如何使用rte_ri...转载 2020-07-21 14:56:16 · 1824 阅读 · 0 评论 -
监督式学习、 非监督式学习、强化学习
Table of Contents广义上来说,有3种机器学习算法1. 监督式学习(Supervised Learning)2. 非监督式学习(Unsupervised Learning)3. 强化学习(Reinforcement Learning)常见机器学习算法列表广义上来说,有3种机器学习算法1. 监督式学习(Supervised Learning)工作机制:该...原创 2020-03-01 12:02:52 · 2291 阅读 · 0 评论 -
【转】C++从零实现神经网络
开发者技术前线CVPy [感谢文章原作者,侵删]Table of Contents一、Net类的设计与神经网络初始化神经网络的要素Net类的设计成员变量与成员函数神经网络初始化权值初始化初始化测试二、前向传播与反向传播前言前向过程反向传播过程注意三、神经网络的训练和测试前言完善后的Net类训练测试四、神经网络的预测...转载 2020-02-20 20:38:22 · 469 阅读 · 0 评论 -
卷积神经网络中十大拍案叫绝的操作
来源 | 知乎作者 | Professor hoTable of Contents一、卷积只能在同一组进行吗?-- Group convolution二、卷积核一定越大越好?-- 3×3卷积核三、每层卷积只能用一种尺寸的卷积核?-- Inception结构四、怎样才能减少卷积层参数量?-- Bottleneck五、越深的网络就越难训练吗?-- Resnet残差网络...转载 2019-10-27 10:41:35 · 338 阅读 · 0 评论 -
Google Tensorflow Webset
https://tensorflow.google.cn/原创 2019-03-27 22:32:56 · 240 阅读 · 0 评论 -
Install TensorFlow for C
Table of ContentsInstall TensorFlow for CSupported PlatformsSetupDownloadExtractLinkerBuildExample programCompileBuild from sourceInstall TensorFlow for CTensorFlow provides a ...转载 2019-03-27 22:30:00 · 1221 阅读 · 0 评论 -
TensorFlow C++ Reference Namespaces
Table of ContentstensorflowSummaryTypedefsFunctionsClassesStructsNamespacesTypedefsOutputListStatusCallbackFunctionsTfCheckOpHelperTfCheckOpHelperOutOfLineoperator<<...转载 2019-03-27 22:26:05 · 580 阅读 · 0 评论 -
TensorFlow C++ Reference
Table of Contentsarray_opsMemberscandidate_sampling_opsMemberscontrol_flow_opsMemberscoreMembersdata_flow_opsMembersimage_opsMembersio_opsMemberslogging_opsMemb...转载 2019-03-27 22:23:44 · 1122 阅读 · 0 评论 -
Tensorflow C++ API
Table of ContentsClasstensorflow::EnvMember SummaryMember DetailsClasstensorflow::EnvWrapperMember SummaryMember DetailsClasstensorflow::RandomAccessFileMember SummaryMember Detai...转载 2019-03-27 22:11:53 · 1257 阅读 · 0 评论 -
深度学习资源
Table of ContentsCC++JavaPythonCommon LispClojureMatlab.NETRubyRScala以下是根据不同语言类型和应用领域收集的各类工具库,持续更新中。C通用机器学习Recommender- 一个产品推荐的C语言库,利用了协同过滤.计算机视觉CCV- C-based/Cached/...转载 2019-03-27 21:47:05 · 620 阅读 · 0 评论 -
Tensorflow卷积神经网络
Table of Contents概述目标本教程的重点模型架构代码组织CIFAR-10 模型模型输入模型预测模型训练开始执行并训练模型评估模型在多个GPU板卡上训练模型在多个设备中设置变量和操作启动并在多个GPU上训练模型下一步注意:本教程适用于对Tensorflow有丰富经验的用户,并假定用户有机器学习相关领域的专业知识和经验。...转载 2019-03-27 21:41:48 · 230 阅读 · 0 评论 -
TensorFlow 是一个用于人工智能的开源神器
网址:http://www.tensorfly.cn/关于 TensorFlowTensorFlow™ 是一个采用数据流图(data flow graphs),用于数值计算的开源软件库。节点(Nodes)在图中表示数学操作,图中的线(edges)则表示在节点间相互联系的多维数据数组,即张量(tensor)。它灵活的架构让你可以在多种平台上展开计算,例如台式计算机中的一个或多个CPU(或...原创 2019-03-25 22:26:59 · 627 阅读 · 0 评论 -
TensorFlow运作方式入门
Table of Contents教程使用的文件准备数据下载输入与占位符(Inputs and Placeholders)构建图表 (Build the Graph)推理(Inference)损失(Loss)训练训练模型图表会话训练循环评估模型构建评估图表(Eval Graph)评估图表的输出(Eval Output)代码:tenso...转载 2019-03-25 22:22:27 · 262 阅读 · 0 评论 -
TensorFlow 深入MNIST
原文地址:http://www.tensorfly.cn/tfdoc/tutorials/mnist_pros.htmlTable of Contents安装加载MNIST数据运行TensorFlow的InteractiveSession构建Softmax 回归模型占位符变量类别预测与损失函数训练模型评估模型构建一个多层卷积网络权重初始化卷积和池...转载 2019-03-25 22:14:57 · 212 阅读 · 0 评论 -
MNIST机器学习入门
作者的相关文章MNIST手写数字数据集格式,如何读取MNIST数据集?【人工智能】利用C语言实现KNN算法进行手写数字识别【BP神经网络】使用反向传播训练多层神经网络的原则+“常见问题”Table of ContentsMNIST数据集Softmax回归介绍实现回归模型训练模型评估我们的模型这个教程的目标读者是对机器学习和TensorFlow都不太了解的新手...转载 2019-03-25 22:06:10 · 223 阅读 · 0 评论