算法记录
文章平均质量分 84
自由的小白
极客极世界!
展开
-
基础算法之简单选择排序(selection sort)
1,名 称:简单选择排序2,复杂度:O(n^2)3,实现方式:C语言4,空间复杂度:O(1)5,稳定性:不稳定6,算法思想:总共遍历两次,外层循环是算法总共要至执行的此数,那么为什么呢?因为该算法每一次执行外层循环会进行一次交换,默认i所在的位置是最大或者最小(要根据升序还是降序确定),然后里层循环是确定要交换的数字,请具体的思想请大家去代码中体会吧!7,算法种类:升序(ascending o...原创 2018-03-17 14:56:26 · 984 阅读 · 0 评论 -
考研复试-----C语言上机操作(三)
上接(考研复试-----C语言上机操作(二))【注】为了大家更方便的看完题目,从此以后将代码放在文章末尾!第一题: 1,问题描述:输入3个数a,b,c,按大小顺序输出。 2,问题思路: 三个数你可以选择采用排序算法求出,但是明显这个题目用if语句判断更加的方便,因此我们采用if语句。 3,参考代码: 见example1第二题: 1,问题...原创 2019-03-12 16:53:21 · 2682 阅读 · 1 评论 -
C语言羁绊之高精度乘法计算
很大一部分借鉴了(C语言的高精度算法)这一博客,你们可以去看看。欢迎指正!!!1,定义 对于计算机无法用普通数据类型(如:longint)表示的大整数进行乘法运算,称为高精度算法。这里的高精度乘法主要指按位模拟运算,实际上就是模拟乘法的过程,也就是笔算的过程。(你拿张纸就可以轻易的模拟出来,但是你原来可能没发现过其中的规律)。2,原理 既然是一个很大的数,我们便不能够在用简单的数据类型...原创 2018-03-19 20:03:40 · 1469 阅读 · 3 评论 -
考研复试-----C语言上机操作(四)
上见(考研复试-----C语言上机操作(三))第一题:和(考研复试-----C语言上机操作(一))第一题相同。第二题:和(考研复试-----C语言上机操作(二))第一题相同。第三题: 1,问题描述 输入若干个英文,以‘,’作为结束符(英文中不包含点号)。统计其中换行符个数和“at”字符串的个数。直接输出它俩的个数,分别用a,b表示。 2...原创 2019-03-12 16:53:15 · 2117 阅读 · 2 评论 -
数素数的问题
具体的题目大家可以再这个网址看:“牛客....”我想说的是,在我的devc++上已经编译成功,而在网页上边却不行,为了防止自己想看,或者以后想到了方法解决,故写此博客。#include "stdio.h"#include "math.h"/******************函数名:find_index()*作用:找出P(m)个素数的下标*参数:int m -第几个素数*返回值:传入...原创 2018-03-21 19:37:31 · 434 阅读 · 0 评论 -
考研复试-----C语言上机操作(五)
经过激烈的竞争,研究生的生活终于要到来了!希望自己可以在新的阶段继续努力!希望可以在这里将考试中遇到的问题记下来,供大家参考,也希望对大家有所帮助!第一题:和(考研复试-----C语言上机操作(一))第一题相同。第二题:1,问题描述 随便给一个不大于1000的数A,列出所有的可能,两个素数B、C相加A;(例如:10=3+7;10=5+5;)2,问题思路 要理...原创 2019-03-12 16:53:07 · 1524 阅读 · 3 评论 -
菜鸟教程 - Python 100例
本博客列出具体题目及其代码,代码github地址 https://github.com/zlhcsm/python-demo-101本博客来源于菜鸟教程运行环境为:python3.01,题目: 有四个数字:1、2、3、4,能组成多少个互不相同且无重复数字的三位数?各是多少?2,题目: 企业发放的奖金根据利润提成。利润(I)低于或等于10万元时,奖金可提10%;利润高于10万元,低于20...原创 2019-07-29 18:31:11 · 2003 阅读 · 0 评论 -
python面试算法真题系列一
Tips:答案在所有问题的后边Githubd地址:里边还有好多真题代码呦!支持的大佬还请点个星星题1简单的字符串排序将字符串按ascii的顺序进行排序注意,用例的输入是input()输入描述cba输出描述abc示例1输入cba输出abc示例2输入031FC输出013CF题2字符映射(1) 有一个字符生成装置,有按钮1-9,其中每个数字对...原创 2019-08-03 09:08:56 · 1139 阅读 · 0 评论 -
括号匹配,看这一篇就够了
文章目录LeetCode题目描述题目分析示例代码(java)LeetCodeleetcode 20题目描述给定一个只包括 ‘(’,’)’,’{’,’}’,’[’,’]’ 的字符串,判断字符串是否有效。有效字符串需满足:左括号必须用相同类型的右括号闭合。左括号必须以正确的顺序闭合。注意空字符串可被认为是有效字符串。示例 1:输入: “()”输出: true示例 2:...原创 2019-09-29 19:33:02 · 628 阅读 · 0 评论 -
考研复试-----C语言上机操作(二)
上接(考研复试-----C语言上机操作(一))第一题: 1,问题描述 冒泡排序。 2,问题思路 冒泡排序总共有两层循环,第一层循环是总共需要排序的次数,由于我们每次默认最后一个数字是有序的,因此,每次的遍历次数为n-1,而内层循环的目的是调整部分序列为有序序列,每次都从数组的第一个数开始,由于第i次的时候,有序数组的长度为i,因此我们遍历...原创 2019-02-22 14:48:19 · 4540 阅读 · 6 评论 -
算法--德才论(解析)
ps:这两天在牛客上练习pat系统,做了一部分的题,有一些是经过一些思考的,不想把这些思想丢掉,希望对大家有一定帮助。具体的问题和输入输出格式,请点击☛德才论题目下面写出的分析过程和最终代码:一,题意 德才兼备 == 圣人 德大于才 == 君子 德才皆无 == 愚人 才大于德 == 小人二,输入输出 输入:总数 最低分数 考虑录取条件(德从高到低) ...原创 2018-03-22 13:20:36 · 853 阅读 · 0 评论 -
基础算法之冒泡排序(bubble sort)
0,(注)由于冒泡排序也分为升序(asc)和降序(desc)排列,为了防止过多的代码,因此我们次文只选择升序作为展示,完整的优化降序代码也将会在文章尾部(Example1)贴出来。那么接下来我们一起来进入可爱的冒泡算法吧!1,算法名称:升序冒泡排序(ascending bubble sort)2,时间复杂度:O(n^2)3,实现方式:C语言4,空间复杂度:O(1)5,稳定性:稳定6,算法思想: ...原创 2018-03-17 15:40:44 · 684 阅读 · 0 评论 -
基础算法之插入排序(insetion sorting)
1,算法名称:升序插入排序(insertion sorting)2,时间复杂度:O(n^2)3,实现方式:C语言4,空间复杂度:O(1)5,稳定性:稳定6,算法思想: 插入排序原理很简单,将一组数据分成两组,我分别将其称为有序组与待插入组。每次从待插入组中取出一个元素,与有序组的元素进行比较,并找到合适的位置,将该元素插到有序组当中。就这样,每次插入一个元素,有序组增加,待插入组减少。直到待...原创 2018-03-17 22:45:47 · 439 阅读 · 0 评论 -
基础算法之快速排序(quick sorting)
注:快速排序是冒泡排序的一种改进,采取了分治的策略(点击查看详情)。1,算法名称:升序快速排序(ascending quick soring)2,时间复杂度:O(nlog2n)3,实现方式:C语言4,空间复杂度:O(log2n)5,稳定性:否6,有无改进:有7,算法思想: 通过一趟排序将要排序的数据分割成独立的两部分,其中一部分的所有数据都比另外一部分的所有数据都要小,然后再按此方法对这两部...原创 2018-03-18 10:09:47 · 636 阅读 · 0 评论 -
算法模式总结
更新ing原创 2018-03-18 10:37:39 · 419 阅读 · 0 评论 -
考研复试-----C语言上机操作(一)
序: 本人今年参加研究生考试,为了练习所找到的历年真题,和方便重新学习,写此博客,具体的学校我就不提了,感兴趣的童鞋们可以联系我。好了,正式开始吧! 本系列操作试题总共分为四道题,每道题分为问题描述、问题思路和参考代码。希望大家能提出改进意见!第一题: 1,问题描述 给你一个数n,使用递归求n! 2,问题思路 此题算是...原创 2019-02-22 14:48:03 · 13186 阅读 · 10 评论 -
菜鸟教程-C语言经典100示例(前50)
这两天正在看基础的算法,在做的时候肯定不能避免的接触了菜鸟上的经典100例,但是使用的时候发现并不是那么的方便,因为它只是给了序号,如果查找某一问题的话很不方便,所以做了这篇博客,希望给自己和其他人带来帮助!1,有1、2、3、4个数字,能组成多少个互不相同且无重复数字的三位数?都是多少?2,企业发放的奖金根据利润提成。其实就是考分类。3,一个整数,它加上100后是一个完全平方数,再加上...原创 2018-03-18 14:05:58 · 62702 阅读 · 14 评论 -
菜鸟教程-C语言经典100示例(后50)
注:接上篇(菜鸟教程-C语言经典100示例(前50))51,学习使用按位与 &。52,学习使用按位或 |。53,学习使用按位异或 ^。54,取一个整数a从右端开始的4~7位。55,学习使用按位取反~。56,画图,学用circle画圆形。57,画图,学用line画直线(在TC中实现)。58,学用rectangle画方形。(在TC中实现)。59,画图,综合例子。(在TC中实现)。60,画图,综...原创 2018-03-18 17:14:19 · 73366 阅读 · 17 评论 -
leetcode486. 预测赢家
给定一个表示分数的非负整数数组。 玩家1从数组任意一端拿取一个分数,随后玩家2继续从剩余数组任意一端拿取分数,然后玩家1拿,……。每次一个玩家只能拿取一个分数,分数被拿取之后不再可取。直到没有剩余分数可取时游戏结束。最终获得分数总和最多的玩家获胜。给定一个表示分数的数组,预测玩家1是否会成为赢家。你可以假设每个玩家的玩法都会使他的分数最大化。示例 1:输入: [1, 5, 2]输出: F...原创 2019-10-03 09:04:24 · 258 阅读 · 0 评论