
算法
bingoCoder
电子信息(软件工程)学生
展开
-
回溯算法求解桥本分数式
题目描述: 将 1-9 九个数不重复地赋给不同的 9 个元素 ,实现形如 a/bc+d/ef=f/hi 的形式: 例:1/26+5/78=4/39 1/32+5/96=7/84 (注意:1/26+5/78=4/39 和 5/78+1/26=4/39 只能算一种解) 求满足条件的解共有多少个? 思路: 要用回溯法 可见问题的解空间是9位的整数组,其约束...原创 2018-07-02 22:00:54 · 4806 阅读 · 0 评论 -
插入排序 Java实现
直接插入排序(Straight Insertion Sort)是一种最简单的排序方法,其基本操作是将一条记录插入到已排好的有序表中,从而得到一个新的、记录数量增1的有序表。 这是百度百科关于直接插入排序的定义。 下面是直接插入排序算法的图解: 1.先有一个待排序的数组 2.i 记录已经排好序的数组的长度,在 i 之前的数组已经按照从小到大...原创 2019-03-31 16:00:08 · 219 阅读 · 1 评论 -
蓝桥杯 | Java B组省赛真题练习——三部排序
标题:三部排序 一般的排序有许多经典算法,如快速排序、希尔排序等。 但实际应用时,经常会或多或少有一些特殊的要求。我们没必要套用那些经典算法,可以根据实际情况建立更好的解法。 比如,对一个整型数组中的数字进行分类排序: 使得负数都靠左端,正数都靠右端,0在中部。注意问题的特点是:负数区域和正数区域内并不要求有序。可以利用这个特点通过1次线性扫描就结束战斗!!...原创 2019-03-23 09:27:32 · 309 阅读 · 0 评论 -
蓝桥杯 | Java B组省赛真题练习——有理数类
标题:有理数类 有理数就是可以表示为两个整数的比值的数字。一般情况下,我们用近似的小数表示。但有些时候,不允许出现误差,必须用两个整数来表示一个有理数。 这时,我们可以建立一个“有理数类”,下面的代码初步实现了这个目标。为了简明,它只提供了加法和乘法运算。class Rational{ private long ra; private long rb;...原创 2019-03-23 09:14:59 · 413 阅读 · 0 评论 -
蓝桥杯 | Java B组省赛真题练习——黄金连分数
标题: 黄金连分数 黄金分割数0.61803... 是个无理数,这个常数十分重要,在许多工程问题中会出现。有时需要把这个数字求得很精确。对于某些 精密工程,常数的精度很重要。也许你听说过哈勃太空望远镜,它首次升空后就发现了一处人工加工错误,对那样一个庞然大物, 其实只是镜面加工时有比头发丝还细许多倍的一处错误而已,却使它成了“近视眼”!! 言归正传,我们如何求得...原创 2019-03-23 07:48:50 · 413 阅读 · 0 评论 -
C++ ——实现链表反转逆序
在B站上学习C++服务器开发,第一节课结束的时候老师布置了一个小作业——实现链表逆序 好久没有接触C++了,大一的时候学过,到了大三忘的差不多了,所以想重新学学。接触过Java和python之后回过来看C++,感觉c++好麻烦。实现链表逆序,首先要有一个链表,下面是链表的结构体:typedef struct listnode { int data; struct...原创 2019-03-25 12:27:35 · 18737 阅读 · 7 评论 -
蓝桥杯 | Java B组省赛真题练习——振兴中华
题目描述: 小明参加了学校的趣味运动会,其中的一个项目是:跳格子。 地上画着一些格子,每个格子里写一个字,如下所示: 从我做起振 我做起振兴 做起振兴中 起振兴中华 比赛时,先站在左上角的写着“从”字的格子里,可以横向或纵向跳到相邻的格子里,但不能跳到对角的格子或其它位置。一直 要跳到...原创 2019-03-20 16:08:31 · 389 阅读 · 0 评论 -
蓝桥杯 | Java B组省赛真题练习——马虎的算式
注:这个解题思路是最简单,最基础,最好写的。(通过循环暴力破解) 问题描述 : 小明是个急性子,上小学的时候经常把老师写在黑板上的题目抄错了。 有一次,老师出的题目是:36 x 495 = ? 他却给抄成了:396 x 45 = ? 但结果却很戏剧性,他的答案竟然是对的!! 因为 36 * 495 = 396 * 45 = 17820 类...原创 2019-03-20 15:18:14 · 292 阅读 · 0 评论 -
蓝桥杯 | Java B组省赛真题练习——世纪末的星期
题目描述: 曾有邪教称1999年12月31日是世界末日。当然该谣言已经不攻自破。 还有人称今后的某个世纪末的12月31日,如果是星期一则会.... 有趣的是,任何一个世纪末的年份的12月31日都不可能是星期一!! 于是,“谣言制造商”又修改为星期日...... 1999年的12月31日是星期五,请问:未来哪一个离我们最近的一个世纪末年(即x...原创 2019-03-19 21:40:39 · 348 阅读 · 0 评论 -
排序算法Java实现(优化上一篇内容)
上一篇文章我学习了使用Java实现了最简单的插入排序算法(InsertionSort)。今天接续跟着马士兵老师学习,他讲到了这个程序还有两个待优化的地方。 1.看下面代码:static void sort(int[] array){ for(int i = 1;i<array.length;i++){ //数组的第一个元素被当作已经排好序的一个数,所以i从...原创 2019-04-01 09:22:42 · 341 阅读 · 1 评论