基础算法学习
文章平均质量分 94
本专题主要记录科研中的一些基础算法,知识难度相对简单。
山颠海涯
中国科学院光学工程博士,计算光学方向,喜欢理科,对数学、物理、计算机充满兴趣;欢迎广大读者交流学习。
展开
-
C语言解决背包问题(动态规划)、最短路径问题(dijkstra算法、floyd算法)
背包问题、最短路径问题是数学建模中常见的最优规划问题,已经有很成熟的解决方法。本文提供了解决这两个问题的参考资料和实现代码,回答了:①背包问题的最大价值和最优选择方案;②最短路问题的最短距离和最短路线。原创 2022-09-22 11:17:21 · 2875 阅读 · 0 评论 -
python中实现蒙特卡洛算法
蒙特卡洛算法,是一种以概率统计理论为指导的一类非常的数值计算方法,是指使用随机数来解决很多计算问题的方法。应用一:用蒙特卡洛算法求解圆周率思路:在直角坐标系中选取x[-1,1],y[-1,1]的正方形区域,其内接圆是以原点为圆心,1为半径的单位圆。在这一矩形区域中随机产生大量的点,判断这些点在圆内的比例,以此来得到圆周率。实现代码:from random import *from math im...原创 2018-03-19 10:30:00 · 12478 阅读 · 0 评论 -
一维离散傅里叶变换,信号分解
傅里叶变换的应用涵盖了概率与统计、信号处理、量子力学和图像处理等学科。离散傅里叶变换的公式如下:在MATLAB中,可以直接使用函数库fft(X)对一维向量X做傅里叶变换,分析信号的组成。如下例子处理一维离散信号信号分析通过傅里叶变换,可以将实变信号f(t)分解成各个频率分量的线性叠加,进而从频率的角度研究信号的组成。来看这个杂乱无章的曲线图,你是否能看出它的规律?Figure 1 What's ...原创 2018-04-03 11:38:53 · 27333 阅读 · 14 评论