- 博客(6)
- 收藏
- 关注
原创 快速幂运算
快速幂本质上就是快速计算n的多次幂,如果我们用暴力去算,那样就需要花费很多时间,这时候就要用到倍增算法了。假设说我们要计算2的100次方,我们就可以看成是2的50次方乘2的50次方,所以我们只需要求出来2的50次方就可以了。2的50次方又可以看成是2的25次方乘2的25次方,求出2的25次方就可以了。2的25次方又可以看成2的12次方乘2的12次方再乘2.这样我们就可以一直往下分一只分到2的1次方就可以了。这样的话,计算的效率就会非常之快。
2023-05-26 21:45:06 357 1
原创 二分查找,最大化答案,最小化答案
二分查找是一种查找算法,本质就是把一个有序序列一分为二,把要查找的数与序列中间的数作比较。如果小于这个数就说明待查找的数在左半边序列里,就在左半边重复此操作,大于同理。
2023-05-19 21:52:47 153 1
原创 快速、归并排序
通过一趟排序将待排序的记录分割成两个独立的部分,其中一部分记录的关键字均比另一部分的关键字小,在分成两个部分之后则可以分别对这两个部分继续进行排序,从而使整个序列有序。
2023-05-12 22:20:32 140 1
原创 栈——铁轨问题
每辆火车都从A方向驶入车站C,再从B方向驶出车站C,同时它的车厢可以进行某种形式的重新组合。组合方式为:最晚驶入车站C的车厢停在最前边,可以在任意时间将停在最前边的车厢驶出车站C。假设从A方向驶来的火车有n节车厢(n<1000),分别按顺序编号为1,2,…n。假设在进入车站之前每节车厢之间都是不连着的,并且他们可以自由移动,直接倒出在B方向的铁轨上。另外假设车站C里可以停放任意多节车厢。但是一旦当一节车厢进入车站C,它就不能再回到A方向的铁轨上,并且一旦当它进入B方向的铁轨后,它就不能再回到车站C。
2023-04-28 22:49:58 486
原创 阿姆斯特朗数
编程找出所有的三位数到七位数中的阿姆斯特朗数。阿姆斯特朗数也叫水仙花数,它的定义如下:若一个n位自然数的各位数字的n次方之和等于它本身,则称这个自然数为阿姆斯特朗数。例如,153(153=1X1X1+3X3X3+5X5X5)是一个三位的阿姆斯特朗数,8208则是一个四位的阿姆斯特朗数。
2023-04-22 19:37:53 557 2
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人