- 博客(8)
- 收藏
- 关注
原创 用C++写个计算天数的程序
其中,11,33,55,77,88,1010,1212月每个月有3131天;44,66,99,1111月每个月有3030天;而对于22月,闰年时有2929天,平年时有2828天。小明习惯用88位数字表示一个日期,其中,前44位代表年份,接下来22位代表月份,最后22位代表日期。显然:一个日期只有一种表示方法,而两个不同的日期的表示方法不会相同。小明认为,一个日期是回文的,当且仅当表示这个日期的88位数字是回文的。现在,小明想知道:在他指定的两个日期之间(包含这两个日期本身),有多少个真实存在的日期。
2023-12-24 14:29:36
514
原创 C++基本数学思想——排列组合是什么?
至此,第二步中,第一种和第三种都是 A、B 的组合,完全一样,就会有一些算重的,至于有多少个算重,取决于抽出个数 m 的全排列种数,即 m 的阶乘。下面我们来点刺激的:假如这四个人中有一个是戏精本精,他最特殊,你会先问他来不来:①如果他来,但你还想一共约两个同学,那么就需要在其他三个同学中再约一个,有 C 3 抽 1 ,共3种方法;咱们聊的第二个概念是“组合”,它比排列更常用,组合的英文是 Combination,因此在数学符号中用 C 表示,美国和英国教材中,也常用“长括号”表示组合数。
2023-12-24 13:57:53
1040
原创 C++二叉树的使用
接下来进入递归,往根节点的左节点和右节点去递归,得到以根节点的左节点为根节点的lca节点left和以以根节点的右节点为根节点的lca节点right。其中,我们的二叉树的是以链式结构建立的,链式结构的每个节点都用BT结构体表示,这个结构体的data代表树的该节点存储的数据(此处为了方便使用char作为存储数据,实际使用时,可以使用各种各样的数据类型代表这个data,甚至在BT下挂载多个数据也是没问题的)。如果没有右节点,根据代码结构,打印上一层的节点(该节点被当作局部子树的左节点)for (i = 0;
2023-12-24 13:52:50
391
原创 C++String语句的用法
17、string.rfind() 与 string.find() 方法类似,只是查找顺序不一样, string.rfind() 是从指定位置 pos (默认为字符串末尾)开始向前查找,直到字符串的首部,并返回第一次查找到匹配项时匹配项首字符的索引。18、string.find_first_of() 方法在字符串中从指定位置开始向后(默认为索引 0 处)查找参数中任何一个字符首次出现的位置。21、string.find_last_not_of() 方法在字符串中查找最后一个不包含在参数中的字符。
2023-12-24 13:41:30
349
原创 如何用Scratch做个简单的物理引擎
3.创建一个变量“重量” 用于计算物体初始重量。(假如物体重量为5并环境处于真空状态)4.利用测算反弹的理论公式(V高+V低)X0.382X重量 计算反弹高度。用Scratch做物理引擎需要以下几个步骤。1.首先我们先用Scratch新建个角色。2.先写出自由下落的物理引擎。5.导入自由下落引擎的翻转。
2023-12-24 13:28:42
1097
原创 什么是树(C++)
那么二叉树的递归定义也是这样:一是递归边界,二是递归式。而所谓的 *root = NULL 的错误就很显然了,因为 *root 的含义是获取地址 root 指向的空间的内容,但这无法说明地址 root 是否为空,也即无法确定是否存在这个结点,因此*root = NULL 的写法是错误的。的区别,也即结点地址为 NULL 与结点内容为 NULL 的区别(也相当于结点不存在与结点存在但没有内容的区别),这在写程序时是非常重要的,因为在二叉链表中一般都是判定结点是否存在,所以一般都是 root==NULL。
2023-12-24 12:58:16
935
原创 什么是栈?(C++)
(4)如果读入的是运算符,当读入运算符的ICP ≤ 运算符栈顶元素的ISP时,将运算符栈顶元素出栈并进入输出栈,直到运算符栈为空或者运算符栈顶元素的ISP小于ICP为止,然后再让读入的运算符入运算符栈。第三步 -入运算符栈之前,先与运算符栈的栈顶元素x比较优先级,因-比x的优先级低,-暂不能入运算符栈,先让x出运算符栈,3与2出运算数栈,计算2x3=6,再将6入运算数栈,然后让-入运算符栈。总结:遇到’)’直接读入运算符栈,入栈后’)’变为最小的ISP,后续的运算符(除了’)’外)都可以直接读入。
2023-12-24 12:14:42
1174
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人