算法
文章平均质量分 60
MarsYjZ
“只有在暴风雨中才有豪迈的飞翔,
只有用滴血的手指才能弹奏出生命的绝响。”
——路遥
展开
-
面试常见必会的几个算法--水仙花、猴子吃桃、生兔子
算法举例:水仙花水仙花数:水仙花数是三位数,它的各位数字的立方和等于这个三位数本身,例如:370=33+73+00;371=33+73+13,370、371就是一个水仙花数注意:要判断一个三位数是不是水仙花数,得先取得这个三位数的的个位,十位和百位C语言#include<stdio.h>int main(){ int b,s,g,n; //n是水仙花数 printf("水仙花数是:\n"); for(n=100;n<1000;n++) { b=n/100; /原创 2022-03-24 08:53:43 · 399 阅读 · 0 评论 -
数据结构之数组、链表、栈队列与树堆及算法排序
数组是使用一块连续的内存空间保存数据,保存的数据的个数在分配内存的时候就是确定的。链表是在非连续的内存单元中保存数据,并且通过指针将各个内存单元链接在一起,最后一个节点的指针指向 NULL 。链表不需要提前分配固定大小存储空间,当需要存储数据的时候分配一块内存并将这块内存插入链表中。堆栈实现了一种后进先出的语义 (LIFO) 。可以使用数组或者是链表来实现它。对于堆栈中的数据的所有操作都是在栈的顶部完成的,只可以查看栈顶部的数据,只能够向栈的顶部压入数据,也只能从栈的顶部弹出数据。队列实现了先入先出的原创 2022-01-16 23:16:26 · 441 阅读 · 0 评论 -
算法分治之金块问题
金块问题分治算法——分治算法的基本思想(分-治-合)用递归设计分治算法的基本步骤(基准与递归方程)老板有一袋金块(共n块,n是2的幂(n≥2)),最优秀的雇员得到其中最重的一块,最差的雇员得到其中最轻的一块。假设有一台比较重量的仪器,希望用最少的比较次数找出最重和最轻的金块。并对自己的程序进行复杂性分析。#include<stdio.h> //比较重量大小的函数float ...原创 2019-12-19 10:05:06 · 6044 阅读 · 3 评论