自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

小新Kelvin

但凡职业高手,始学于知识,悟道于实践,境界至高则臻于法无定法,游刃于无形。

  • 博客(33)
  • 资源 (1)
  • 收藏
  • 关注

转载 Android相对布局属性一览

RelativeLayout布局android:layout_marginTop=“25dip” //顶部距离android:gravity=“left” //空间布局位置android:layout_marginLeft="15dip //距离左边距// 相对于给定ID控件android:layout_above 将该控件的底部置于给定ID的控件之上;android:layout_below 将该控件的底部置于给定ID的控件之下;android:layout_toLeftOf 将该控件

2020-12-03 11:03:58 4

原创 问题B出租车---《算法笔记》之贪心

问题 B: 出租车费[命题人 : 外部导入]时间限制 : 1.000 sec 内存限制 : 32 MB题目描述某市出租车计价规则如下:起步4公里10元,即使你的行程没超过4公里;接下来的4公里,每公里2元;之后每公里2.4元。行程的最后一段即使不到1公里,也当作1公里计费。一个乘客可以根据行程公里数合理安排坐车方式来使自己的打车费最小。例如,整个行程为16公里,乘客应该将行程分成长度相同的两部分,每部分花费18元,总共花费36元。如果坐出租车一次走完全程要花费37.2元。现在给你整个行程的公

2020-11-11 21:32:49 14

原创 问题A:看电视---《算法笔记》之贪心算法

问题 A: 看电视[命题人 : 外部导入]时间限制 : 1.000 sec 内存限制 : 32 MB题目描述暑假到了,小明终于可以开心的看电视了。但是小明喜欢的节目太多了,他希望尽量多的看到完整的节目。现在他把他喜欢的电视节目的转播时间表给你,你能帮他合理安排吗?输入输入包含多组测试数据。每组输入的第一行是一个整数n(n<=100),表示小明喜欢的节目的总数。接下来n行,每行输入两个整数si和ei(1<=i<=n),表示第i个节目的开始和结束时间,为了简化问题,每个时间都

2020-11-11 20:52:30 53

转载 哈夫曼树构造原理及方法

哈夫曼树(最优二叉树)百度百科:https://baike.baidu.com/item/%E5%93%88%E5%A4%AB%E6%9B%BC%E6%A0%91/2305769?fr=aladdin一. 目的:找出存放一串字符所需的最少的二进制编码二. 构造方法:首先统计出每种字符出现的频率!(也可以是概率)//权值 例如:频率表 A:60, B:45, C:13 D:69 E:14 F:5 G:3第一步:找出字符中最小的两个,小的在左边,大的在右边,

2020-11-02 10:46:45 183

原创 问题 A: 找x--《算法笔记》

问题 A: 找x[命题人 : 外部导入]时间限制 : 1.000 sec 内存限制 : 32 MB题目描述输入一个数n,然后输入n个数值各不相同,再输入一个值x,输出这个值在这个数组中的下标(从0开始,若不在数组中则输出-1)。输入测试数据有多组,输入n(1<=n<=200),接着输入n个数,然后输入x。输出对于每组输入,请输出结果。样例输入 Copy41 2 3 43样例输出 Copy2#include<iostream>int main(){

2020-10-29 11:04:54 7

原创 问题 C: 神奇的口袋--《算法笔记》

问题 C: 神奇的口袋[命题人 : 外部导入]时间限制 : 1.000 sec 内存限制 : 32 MB题目描述有一个神奇的口袋,总的容积是40,用这个口袋可以变出一些物品,这些物品的总体积必须是40。John现在有n个想要得到的物品,每个物品的体积分别是a1,a2……an。John可以从这些物品中选择一些,如果选出的物体的总体积是40,那么利用这个神奇的口袋,John就可以得到这些物品。现在的问题是,John有多少种不同的选择物品的方式。输入输入的第一行是正整数n (1 <= n &l

2020-10-21 16:21:17 7

原创 问题 B: 数列--《算法笔记》

题目描述编写一个求斐波那契数列的递归函数,输入n 值,使用该递归函数,输出如下图形(参见样例)。输入输入第一行为样例数m,接下来有m行每行一个整数n,n不超过10。输出对应每个样例输出要求的图形(参见样例格式)。这其实就是一个图形输出加斐波那契数列,只要搞明白双循环和递归的运用就可以了。#include<iostream>#include<cstring>int f(int a){ if(a==1){ return 0; }else if(a==2){

2020-10-21 15:19:13 9

原创 问题 A: 吃糖果--《算法笔记》

题目描述名名的妈妈从外地出差回来,带了一盒好吃又精美的巧克力给名名(盒内共有 N 块巧克力,20 > N >0)。妈妈告诉名名每天可以吃一块或者两块巧克力。假设名名每天都吃巧克力,问名名共有多少种不同的吃完巧克力的方案。例如:如果N=1,则名名第1天就吃掉它,共有1种方案;如果N=2,则名名可以第1天吃1块,第2天吃1块,也可以第1天吃2块,共有2种方案;如果N=3,则名名第1天可以吃1块,剩2块,也可以第1天吃2块剩1块,所以名名共有2+1=3种方案;如果N=4,则名名可以第1

2020-10-21 10:27:32 6

原创 问题 D: String Subtraction (20)--《算法笔记》

题目描述Given two strings S1 and S2, S = S1 - S2 is defined to be the remaining string after taking all the characters in S2 from S1. Your task is simply to calculate S1 - S2for any given strings. However, it might not be that simple to do it fast.输入Each in

2020-10-20 17:58:38 5

原创 问题 C: Be Unique (20)--《算法笔记》

题目描述Being unique is so important to people on Mars that even their lottery is designed in a unique way. The rule of winning is simple: one bets on a number chosen from [1, 104]. The first one who bets on a unique number wins. For example, if there are 7 p

2020-10-20 17:13:11 5

原创 CodeUp100000582--问题 A: 谁是你的潜在朋友

题目描述“臭味相投”——这是我们描述朋友时喜欢用的词汇。两个人是朋友通常意味着他们存在着许多共同的兴趣。然而作为一个宅男,你发现自己与他人相互了解的机会 并不太多。幸运的是,你意外得到了一份北大图书馆的图书借阅记录,于是你挑灯熬夜地编程,想从中发现潜在的朋友。首先你对借阅记录进行了一番整理,把N个读者依次编号为1,2,…,N,把M本书依次编号为1,2,…,M。同时,按照“臭味相投”的原则,和你喜欢读同一本书的人,就是你的潜在朋友。你现在的任务是从这份借阅记录中计算出每个人有几个潜在朋友。输入每个案例

2020-10-18 16:24:46 6

原创 Codeup100000581--问题 I: 排名

题目描述今天的上机考试虽然有实时的Ranklist,但上面的排名只是根据完成的题数排序,没有考虑每题的分值,所以并不是最后的排名。给定录取分数线,请你写程序找出最后通过分数线的考生,并将他们的成绩按降序打印。输入测试输入包含若干场考试的信息。每场考试信息的第1行给出考生人数N ( 0 < N < 1000 )、考题数M ( 0 < M < = 10 )、分数线(正整数)G;第2行排序给出第1题至第M题的正整数分值;以下N行,每行给出一名考生的准考证号(长度不超过20的字符串)、

2020-10-18 15:53:16 3

原创 Codeup:100000581--问题 H: 整数奇偶排序

题目描述输入10个整数,彼此以空格分隔。重新排序以后输出(也按空格分隔),要求:1.先输出其中的奇数,并按从大到小排列;2.然后输出其中的偶数,并按从小到大排列。输入任意排序的10个整数(0~100),彼此以空格分隔。输出可能有多组测试数据,对于每组数据,按照要求排序后输出,由空格分隔。样例输入 Copy0 56 19 81 59 48 35 90 83 7517 86 71 51 30 1 9 36 14 16样例输出 Copy83 81 75 59 35 19 0 48 56 9

2020-10-18 15:02:51 5

原创 Codeup:100000581--问题 G: 中位数

题目描述中位数定义:一组数据按从小到大的顺序依次排列,处在中间位置的一个数(或最中间两个数据的平均数).给出一组无序整数,求出中位数,如果求最中间两个数的平均数,向下取整即可(不需要使用浮点数)输入该程序包含多组测试数据,每一组测试数据的第一行为N,代表该组测试数据包含的数据个数,1<=N<=10000.接着N行为N个数据的输入,N=0时结束输入输出输出中位数,每一组测试数据输出一行样例输入 Copy14681550117072547935996346570

2020-10-18 12:26:10 5

原创 问题 F: 小白鼠排队--Codeup100000581

题目描述N只小白鼠(1 <= N <= 100),每只鼠头上戴着一顶有颜色的帽子。现在称出每只白鼠的重量,要求按照白鼠重量从大到小的顺序输出它们头上帽子的颜色。帽子的颜色用“red”,“blue”等字符串来表示。不同的小白鼠可以戴相同颜色的帽子。白鼠的重量用整数表示。输入多案例输入,每个案例的输入第一行为一个整数N,表示小白鼠的数目。下面有N行,每行是一只白鼠的信息。第一个为不大于100的正整数,表示白鼠的重量,;第二个为字符串,表示白鼠的帽子颜色,字符串长度不超过10个字符。注意:白

2020-10-18 11:56:01 13

原创 Codeup100000581--问题 E: Problem B

题目描述请写一个程序,对于一个m行m列的(1<m<10)的方阵,求其每一行,每一列及主对角线元素之和,最后按照从大到小的顺序依次输出。输入共一组数据,输入的第一行为一个正整数,表示m,接下来的m行,每行m个整数表示方阵元素。输出从大到小排列的一行整数,每个整数后跟一个空格,最后换行。样例输入 Copy415 8 -2 631 24 18 71-3 -9 27 1317 21 38 69样例输出 Copy159 145 144 135 81 60 44 32 28 27

2020-10-18 11:37:05 14

原创 Codeup:100000581--问题 D: 字符串内排序

题目描述输入一个字符串,长度小于等于200,然后将输出按字符顺序升序排序后的字符串。输入测试数据有多组,输入字符串。输出对于每组输入,输出处理后的结果。样例输入 Copytianqin样例输出 Copyaiinnqt提示注意输入的字符串中可能有空格。分析:有空格则不能使用%s,则可以使用gets代码:#include<iostream>#include<cstring>#include<algorithm>using namespa

2020-10-18 10:23:51 8

转载 gets(str)函数和scanf(“%s“,str)区别

gets(str)函数和scanf("%s",str)区别:转自:https://zhidao.baidu.com/question/290403568.html二者都是从终端读入字符串。功能为:  1、 gets功能为读入一行,并将换行符转换为字符串结束符。  2、 scanf("%s",s);读入时,遇到空白字符,包括空格,制表符,换行符时均会停止输入。从功能上可以看出不同之处:  1、 终止条件不同。gets只有遇到\n时才会结束输入,而scanf遇到空格或制表符时,也会结束输入。比如输

2020-10-17 16:52:59 43

原创 详谈C语言之宏定义

1、宏是简单的符号替换,即将宏定义中的表达式或常数替换到应用了宏的地方,做简单的替换,宏内不进行运算返回值的操作2、函数是值传递或地址传递,内部会进行运算返回。

2020-10-12 17:21:32 8

原创 详谈redis事务与流水线

本文主要讲解redis中事务与流水线的原理及使用,事务可以让一个客户端在不被其他客户端打断的情况下执行多个命令。一次性发送多个命令,然后等待所有回复出现**这种做法,通常称为**流水线(pipelining)。合理地使用这些知识将有效地提高工作效率。

2020-10-10 09:39:18 100

原创 C语言指针在数组之中的妙用

数组指针其实就是行指针,本文着重讲解了一维和二维,如果实际代码中遇到了更多维数的指针也一样可以运用这种嵌套的思想来理解。编程最重要的就是理解其底部的思想。

2020-09-26 23:59:52 37

原创 初步理解C语言指针

指针是C语言的精华,就像封装、继承、多态这三大特性之于Java一样重要。如果不会指针、不会结构体,那只能算编程爱好者,不能算专业程序员。

2020-09-25 11:15:09 23

原创 详谈redis命令之发布与订阅(pub/sub)

发布-订阅模式很容易理解,你肯定订阅了多个微信公众号,那么你会发现,发布公众号消息的人与你的关系不大,但是公众号文章的阅读却显得十分简单。这就是发布-订阅模式的解耦作用。

2020-09-24 17:51:41 27

原创 详谈redis之有序集合(ZSET)

一、前言有序集合存储着成员(member)和分值(score)的键值对,按照分值从小到大自动排序,具体细节在第一篇blog《详谈redis数据结构》中,不太熟悉的同学可以回去查看。二、命令2.1 ZADDZADD全称zset add将给定分值的成员添加到有序集合里面System.out.println(conn.zadd("high",180,"Kelvin"));查看redis中,已存储该条数据2.2 ZREMZREM全称zset remove从有序集合里面移除给定的成员,并返回被

2020-09-21 15:32:51 114

原创 详谈redis命令之散列(HASH)

一、前言散列(HASH)在《详谈redis数据结构》中也介绍过,是以键值对存储的无序的数据结构,如果对散列(HASH)不太熟悉的读者可以回头去仔细读一遍。本文将讲述HASH的一些常用命令,包括添加、删除、获取、自增、自减等操作。二、HASH命令2.1 HSETHSET全称hash set关联键值对,返回“1”表示成功,“0”表示失败System.out.println(conn.hset("hash-key","name","Kelvin"));将“name”–“Kelvin”这样的键值对

2020-09-18 16:00:51 52

原创 详谈redis命令之集合(SET)

一、前言二、命令2.1 SADDSADD全称SET ADD往一个集合内添加一个或多个成员,并返回本次添加成员的数量System.out.println(conn.sadd("name","Kelvin","Oscar","Lina"));打开redis desktop manager查看集合内的元素已添加成功。2.2 SREMSREM 全称SET REM从集合里面移除一个或多个元素,并返回被移除元素的数量我们将刚刚的name集合中的“Kelvin”移除掉System.out.p

2020-09-18 10:59:40 46

原创 详谈redis命令之列表(List)

一、前言在第一篇blog《详谈redis数据结构》中就已讲解过redis的列表结构,常用的一些操作命令也讲解过,也详细解说过列表的有序和有序集合的有序是不一样的有序,如果还不太清楚的同学可以回头去读。本文将着重详细讲解redis中关于列表的操作命令,使用Java语言来写示例,如果读者对Java语言不熟悉,可以关注文章末尾的微信公众号查看Java系列文章。二、列表的操作命令2.1 LRANGELRANGE全称:list range返回[start,end]区间之内的所有元素(具体示例见下文)2

2020-09-17 15:35:34 57

原创 详谈redis命令之字符串

一、redis中字符串的结构我的第一篇blog《详谈redis数据结构》就讲到过,redis的字符串类型可以存储字符串、整数、浮点数。注意我说的redis字符串类型和字符串,前者是redis内部概念,1和“kelvin”都算redis的字符串类型;后者是编程的广泛概念,1是整数,“Kelvin”这种称为字符串。1.1 redis中整数和字符串的变换看到上面我说的redis的字符串类型可以存储字符串、整数、浮点数,作为一个学习了多种高级编程语言的你,或许会很疑惑,以一个字符串形式输入的“1”为

2020-09-16 18:49:43 39

原创 redis构建web应用(二)

一、前言在《redis构建web应用(一)》中,我们实现了三个基本功能:(1) 记录登录用户的token和用户名(2) 记录每个用户最近浏览的五个商品(3) 当登录网站的用户量超服务器限制时,使用淘汰最近最久未使用算法删除一部分用户所对应的信息通过上篇blog的练习,读者是否对redis的数据类型应用有了更加强的印象了呢,在本文中,我们将继续完善web应用的一些基础功能。如果对Java语言不熟悉,也可以自行选择任意一种能够连接redis的语言进行完成,如果对其他语言也不熟悉,那还是跟着我一起用Ja

2020-09-15 21:07:17 48

原创 我的第一个鸿蒙应用Hello World

一、注册华为账号因为小新是米粉,所以没有使用过华为的设备,需要注册一个华为账号。如果读者已有华为账号则无需注册,直接到第二节开始。1、点击HarmonysOS应用开发门户,点击右上角注册按钮,注册开发者帐号2、万万没想到填了邮箱注册还是要填手机号3、及时进行实名认证自己研究一下,所以选择的是个人认证,各位大佬想企业认证可以查看企业认证的文档先整一个“否”吧,等后续真要上架应用再回来认证也不迟哈~接下去为了快速通过验证,我选择了银行卡验证,反正银行卡常年没钱,嘿嘿。银行卡实名认

2020-09-13 01:43:17 2465

原创 redis构建web应用(一)

redis构建web应用(登录部分)一、前言web应用在许多同学眼中看来是一个庞然大物,可能很难学吧。其实这是对的,不仅仅是web应用,就连一个小小的微信小程序也需要有强大的后台作为数据处理能力的支撑。回想你所使用的任何一款应用,是不是最开始要解决的都是账号密码问题呢?那作为一名程序员如何解决这个后台问题呢?你可以选用常规的关系型数据库,但是这和我们前几篇文章里面所提到的一样,redis的效率远远高于关系型数据库,将极大的提高应用速度,提升用户体验。如果未安装Redis Desktop Manager

2020-09-11 18:13:33 74

原创 redis后台实现投票功能

redis后台实现投票功能一、前言本文以投票功能为例,从实际例子中熟练掌握redis的应用。阅读本文需要有一定的Java基础和对redis数据结构的了解,如果Java不太行的同学建议关注小鱼儿的公众号,对redis数据结构不太了解的同学可以回看我的上一篇文章:详谈redis数据结构二、投票功能的业务逻辑大家肯定在大学时期经常在班级QQ群内遇到一些投票的活动。显而易见,投票是一个逻辑很清晰的功能,首先,投票发起人发起投票,然后各位用户可以进行投票,在本案例中票种分为“赞成票”(approve)和“反对

2020-09-07 11:24:09 132

原创 详谈redis数据结构

详谈redis数据结构redis五种数据结构类型分别是STRING(字符串)、LIST(列表)、SET(集合)、HASH(散列)和ZEST(有序集合)下面将一一讲解数据结构之间1、STRING(字符串)存储方式:redis中的字符串按照key-value的形式存储存储的值:可以是字符串、整数、浮点数(可对整数浮点数执行自增、自减)以下为STRING操作代码示例1.1、STRING存储set myName Kelvin# 作用:存储key为myName,value为Kelvin的字符串#

2020-09-02 19:20:11 110 1

redis实现后台投票系统vote.rar|vote.rar

使用redis替代关系数据库来实现后台投票系统,使系统反应速度更快,服务器压力更小。其难点就在于选用合适的数据类型存储合适的数据。

2020-09-11

空空如也

空空如也

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

TA关注的人 TA的粉丝

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