C++
ccornell
这个作者很懒,什么都没留下…
展开
-
设计模式之观察者模式
在GOF的《设计模式:可复用面向对象软件的基础》一书中对观察者模式是这样说的:定义对象间的一种一对多的依赖关系,当一个对象的状态发生改变时,所有依赖于它的对象都得到通知并被自动更新。Observer 模式要解决的问题为: 建立一个一( Subject)对多( Observer) 的依赖关系, 并且做到当“一” 变化的时候, 依赖这个“一”的多也能够同步改变。2.当对一个对象的改变需要同时改变其它对象,而不知道具体有多少对象有待改变;——当它的状态发生改变时,向它的各个观察者发出通知。原创 2023-06-11 17:56:06 · 1129 阅读 · 0 评论 -
for循环小解
在C++中 遍历字符串:for (char c : s)和for (char& c : s)的区别相当于C++的:for( int i = 0; i < s.length(); i++){ s[i]…}对数组进行循环的遍历。使用for (char c : s)时会复制一个s字符串再进行遍历操作。而使用for (char& c : s)时直接引用原字符串进行遍历操作,由于复制一个字符串花费了大量的时间,所以第一种解法要快于第二种解法。这个和foreach的for循环一样原创 2021-05-11 21:54:06 · 392 阅读 · 0 评论 -
C++之动态规划
动态规划基本的思想:动态规划算法通常用于求解具有某种最优性质的问题。在这类问题中,可能会有许多解。每一个解都对应着一个值,我们的目标就是找到具有最优值的解。动态规划算法与分治法类似,其基本思想也是将待求解问题分解成若干个子问题,先求解子问题,然后从这些子问题的解得到原问题的解。与分治法不同的是,适合于用动态规划求解的问题,经分解得到子问题往往不是互相独立的,而是有所关联的。若用分治法来解这类问题,则分解得到的子问题数目太多,有些子问题被重复计算了很多次。如果我们能够保存已解决的子问题的答案,而在需要时再原创 2021-04-24 21:30:09 · 117 阅读 · 0 评论 -
sort()函数
使用该函数要加上一个头文件algorithm才能使用该函数的功能:对给定范围内的序列进行升序排序(默认升序排列)。sort(begin,end,cmp),cmp参数默认升序。vector容器函数进行排序时:sort(nums.begin(),nums.end());数组排序时一般为,示例:int a[7] = {1,11,9,6,8,3,2};sort(a,a+7);...原创 2021-04-23 10:43:58 · 273 阅读 · 0 评论 -
2021-04-08
C++中find( )函数的一般用法C++中STL里提供了许多字符串操作的函数,下面是字符串查找方面的部分函数用法简介:1.find()查找第一次出现的目标字符串:#include#includeusing namespace std;int main(){string s1 = “abcdef”;string s2 = “de”;int ans = s1.find(s2) ; //在S1中查找子串S2cout<<ans<<endl;system(“pau转载 2021-04-08 20:36:35 · 77 阅读 · 0 评论