![](https://img-blog.csdnimg.cn/20201014180756754.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
算法与数据结构
通下水道技术一流
纸上得来终觉浅
展开
-
嵌入式平台的数学算法效率优化方法小结
1.simd指令,即实现并行计算,比如两个矩阵相加运算,CPU是SISD,会按顺序挨个进行计算,不过用simd指令可以进行一定程度上的并行计算什么是SIMD指令 - general001 - 博客园SIMD指令编程demo_哔哩哔哩_bilibili2.数学函数比如arctan的计算优化不要用math.h里面的函数,那个最慢1)使用泰勒展开,然后结合使用simd2)使用查表法,以空间换时间...原创 2021-10-07 22:29:34 · 416 阅读 · 0 评论 -
javascript实现n阶乘的2个方法
方案一:利用while循环function factorial(num){ var result = 1; while(num){ result *= num; num--; } return result; }方案二:利用函数递归function factorial(num){ if(num <= 0){ return 1; }else{原创 2016-05-01 22:31:21 · 19501 阅读 · 0 评论 -
C语言输出正三角形
输出这个正三角形分析:行数为五行,然后确定每行需要输出的空格数和*号数即可int i, j, k; for(i = 1; i<5; i++) { /* 观察每行的空格数量,补全循环条件 */ for(j = 0 ;j < 4-i ;j++) { printf(" "); //输出空格原创 2016-05-02 13:04:17 · 28234 阅读 · 5 评论 -
C语言打印9*9乘法口诀表
找到规律:第一个操作数按行递减,第二个操作数在每一行上递增 // 定义相乘数字i,j以及结果result int i, j, result; for(i = 9; i > 0; i--){ for(j = 1; j <= i; j++){ printf("%d*%d=%d ",i,j,i*j); }原创 2016-05-02 14:22:40 · 1200 阅读 · 0 评论 -
C语言找素数
找出0-50之间的所有素数,所谓素数就是只能被1和它本身整除的数字,比如:7,13,23等。int m, n; for(m=2; m<=50; m++) { for(n=2; n<m; n++) { if(m%n==0) //n整除m跳出当前循环 break; }原创 2016-05-02 14:48:54 · 3973 阅读 · 0 评论 -
c语言特殊数之和
计算1到20之间不能被3整除的数字之和。分析:从1到20循环,判断是否能被3整除,如果不能则加上,能则使用continue跳过本次循环。 int i, sum; for(i=1, sum=0; i<=20; i++) { if(i%3 == 0) //能被3整除就不加上,跳过本次循环 { continue;原创 2016-05-02 17:54:38 · 1069 阅读 · 0 评论 -
C语言递归——猴子摘桃
猴子第一天摘下N个桃子,当时就吃了一半,还不过瘾,就又多吃了一个。第二天又将剩下的桃子吃掉一半,又多吃了一个。以后每天都吃前一天剩下的一半零一个。到第10天在想吃的时候就剩一个桃子了,问第一天共摘下来多少个桃子?并反向打印每天所剩桃子数。运行结果:C程序代码:#include int getPeachNumber(n){ int num; //定义所剩桃子数原创 2016-05-03 17:18:16 · 14186 阅读 · 2 评论 -
冒泡排序
原文链接:点击打开链接在开发中,对一组数据进行有序地排列是经常需要做的事情,所以掌握几种甚至更多的排序算法是绝对有必要的本文章介绍的是排序算法中较简单的一种算法:冒泡排序题外话:在深入学习更多排序算法后和在实际使用情况中,冒泡排序的使用还是极少的。它适合数据规模很小的时候,而且它的效率也比较低,但是作为入门的排序算法,还是值得学习的先尝试用最简单的想转载 2016-05-07 14:10:26 · 438 阅读 · 0 评论