自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(9)
  • 收藏
  • 关注

原创 mac m1安装imagemagick(ImportError: MagickWand shared library not found)

mac m1安装imagemagick(ImportError: MagickWand shared library not found)

2022-08-04 15:42:32 969 1

原创 斐波那契数列递归优化

背景:今天看网课提到了斐波那契数列使用递归效率过低的问题,于是自己写代码使用递归求第100项,出去吃完早饭回来还没跑完。。。好吧,需求来了,我们来开始优化吧!😅1、原代码def fibonacci(n): if n == 1 or n == 2: return 1 else: return fibonacci(n - 1) + fibonacci(n - 2)2、改进两种办法,本质上都是把先前函数运行的结果存起来,下一次需要调用时候直接使用。第一种是装饰器,args[0

2022-03-27 19:49:57 1155

原创 计算字符串中的数字之和

基本思想设字符串为str,当前扫描起始位置为i,末位为j,和计作sum,初始为0;1、从i=0开始扫描str,如果不是数字行字符,跳过;否则,标记当前位置为i,并找到连续的数字字符的最后一位,标记为j,根据j-i确定次方数,进而求出数字,并和sum相加;2、确定一个数字后,此时j的下一位非数字字符,因此下一次从j的下一位开始扫描,即i=j+1;3、当str[j]='\0',扫描完成,程序结束;代码bool IsNum(char c) { if (c >= '0'

2021-11-19 11:51:52 6869

原创 n个人围成一圈报数,报到k的人出列,直到所有人都出列,打印出列过程

基本思路1、假设每次报的数为curNum,初始为0;当前报数人的编号为index,初始为0;在列人数remin初始为n;number表示成员的编号;status表示该成员当前是否在列,0:出局,1:在列。2、每次index前进1:index =(index+1)%n,类似循环队列的操作方式。每次不管指向的报数者是否在列,都要前进1。3、num赋值:当前报数者在列,报数+1;如果num=k,那么此人应该出列,剩余人数减1,且将其状态置为出列。从下一个人开始,又要从1开始报数,那么num应该重置为0

2021-11-18 23:35:01 2893

原创 有一行电文,已按下面规律译成密码: a→z b→y c→x A→Z B→Y C→X ,输出原文

一、分析1、将字符与ascii码联系起来(a,z)=(97,122) (A,Z)=(65,90) 括号表示连续区间2、寻找数学关系若c1属于[a, z],c2 = 'a' + 122 - c1; 122即z的ascii码,z-c1表示当前字母与z的间隔,画出数轴更加直观一些,如下图所示: a和z关于中轴对称,c1的对称点c1'即为所求点,因此在a、z、c1已知的情况下,可求得c1'的值为a+(z-c1)若c1属于[A, Z],c2 = 'A' ...

2021-10-22 23:23:22 2573

原创 矩阵2-打印魔方矩阵(非常简单)

一、分析令n=3,以3x3的魔方矩阵为例,可以看到:1、填充数字是从1~n*n的连续整数(回答程序边界在哪里的问题);2、第一个元素1的位置在第0行第1列,即matrix[0][n/2](回答程序从何处开始的问题);3、其他元素(回答如何根据当前位置,确定下一个位置的问题): 1)下一个填充位置为当前位置的上一行,下一列,如果当前位置行标为0,则下一个位置行标为n-1=2,如果当前位置列标为n-1=2,则下个元素列标为0;那么在这里,就构成了n=3个数字的循环结构,可...

2021-10-21 23:48:51 296

原创 矩阵1-螺旋矩阵(c语言实现,有详细注解)

一、观察从方向上看,每一圈分别从右、左、下、上四个方向创建数据,以5x5的矩阵为例,模拟数据创建过程如下:圈数 向右填充个数 向下填充个数 向左填充个数 向上填充个数 1 5 4 4 3 2 3 2 2 1 3 1 0 0 0 二、分析每次向下赋值前,行下标+1;向左赋值前,列下标-1;向上赋值前,行下表-1(使转向前最后一个赋值的元素...

2021-10-18 23:13:54 3378 5

原创 矩阵3-n阶矩阵相乘

步骤:1、两个矩阵的乘法设有矩阵A33 * B33 = C33,根据矩阵乘法定律,有:c00 = a00*b00 + a01b10 + a02*b20; c01= a00*b01+ a01b11+ a02*b21; ...从而可以得到两个矩阵相乘的算法。其中m1、m2表示乘数,m是积。void MatrixMutiply(int n, int **m1, int **m2, int **m) { //n阶矩阵相乘 int tmp; for (int ...

2021-10-14 00:47:43 2027

原创 C语言实现strcmp函数

思想:1、在两个字符串都非空时逐个比较,*str1 - *str2 = det(ascii),非0则返回差值;2、步骤1比较完成后,必有一个字符串当前位置值为'\0',又有str - '\0' = ascii(str),故再做一次字符串的减法,即可完成比较。(需要注意的地方是,str++操作必须在return之前,因为要确保退出循环后,字符串指针仍然向后移动了一次)int StrCmp(const char *str1, const char *str2) { //实现strcm.

2021-10-13 20:10:14 864

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除