算法
文章平均质量分 72
CFuYuan
我是Fruit_Caller
展开
-
嵌入式开发高频面试题——第四章 常见算法(下)
STL 中的sort函数是针对随机访问迭代器设计的,这意味着它要求底层容器(如vectordeque)支持随机访问(通过索引访问元素)。但是list是一个双向链表,只支持双向迭代器,因此无法直接使用sort。list中定义的sort函数使用的是基于合并排序的算法,因为合并排序可以在链表中高效实现,且稳定。链表不适合随机访问,所以快速排序等算法在链表上不适用。原创 2024-09-06 18:08:38 · 820 阅读 · 2 评论 -
海南大学期末复习——算法设计与分析
快要期末考试啦,对算法做一个总结,以备自己后续的学习。看之前可以先重点看看目录,这样可以明确这篇文章的结构,并且迅速找到需要的知识 概念:最优算法:大Ω符号常常与大O符号配合以证明某问题的一个特定算法是该问题的最优算法,或是该问题中的某算法类中的最优算法。一般情况下,如果能够证明某问题的时间下界是Ω(g(n))来求解该问题的任何算法,都认为是求解该问题的最优算法主定理:习题: 分治法:将一个难以直接解决的大问题划分成一些规模较小的子问题,分别求解各个子问题,然后将各个子问题的解合并。分为三步:划分、求解原创 2022-06-16 22:51:19 · 1165 阅读 · 0 评论 -
动态规划解决01背包问题
问题描述有n个物品,它们有各自的体积和价值,现有给定容量的背包,如何让背包里装入的物品具有最大的价值总和?动态规划与分治法的区别是:分治法在解决子问题与子子问题上有些操作被重复了很多次,但是动态规划具有记忆功能,将上次的结果记录下来,有主意提高效率。确定递推公式value[i]:代表第i个物品的价值weight[i]:代表第i个物品的体积dp[i][j]: 0到i之间的物品任取放入容量为j的背包中那如果是dp[i-1][j]呢?那就是:0到i-1之间的物品中任取放入容量为j的背包中那可以原创 2022-06-03 22:17:24 · 485 阅读 · 0 评论 -
C++丨常见的三种求最大公约数方法
运行结果:#include <iostream>using namespace std;int CommFactor2(int m, int n); //函数的声明int main(){int a, b,c=1;char d; while(c!=0){ int CommFactor1(int m,int n); int CommFactor2(int m,int n); int CommFactor3(int m,int n); cout<<"A、穷举法原创 2022-03-01 10:50:23 · 1909 阅读 · 0 评论 -
Java语言求100以内的素数(详解)
如何求素数,算是很经典的算法题了,着重理解%与j原创 2022-01-05 16:57:12 · 19679 阅读 · 7 评论