(编程题)字母易位词

题目两个单词如果包含相同的字母,次序不同,则称为字母易位词(anagram)。例如,“silent”和“listen”是字母易位词,而“apple”和“aplee”不是易位词。请定义函数检查两个单词是否是字母易位词。可以假设两个单词字母均为小写。要求算法复杂度尽量低。思路1.暴力破解:判断str1中的每一个字母是否出现在str2中,同时我们需要一个大小与字符串位数一致的数组来记录str...

置顶 原创 点赞0 阅读15 收藏0 评论0 15 天前

2020我写了什么?

去年我写了哪些东西?这是我做总结的时候想的第一个问题,然后我回头看我写过的文章。文章目录剑指OfferLeetCode系列Mybatis学习之路JVM笔记设计模式Java集合JDBC系列文章Java基础下面主要讲解几个主要的方向:剑指Offer去年完成35篇,今年主要目标是完成全部,以及补充多种解法,同时维护刷题的仓库,使用docsify搭建,刚刚建立起来:https://github.com/Damaer/CodeSolution剑指Offer话题集合:https://mp.weixi

置顶 原创 点赞0 阅读32 收藏0 评论0 15 天前

【实战问题】-- 聊聊礼品领取的架构设计中setnx相关的细节

前面讲解到实战问题】-- 设计礼品领取的架构设计以及多次领取现象解决?,如果出现网络延迟的情况下,多个请求阻塞,那么恶意***就可以全部请求领取接口成功,而针对这种做法,我们使用setnx来解决,确保只有一个请求可以进入接口请求。 public String receiveGitf(int activityId,int giftId,String uid){ // isExist判断活动是否存在,内部包括redis和数据库请求,省略 if(isActivityExis

置顶 原创 点赞0 阅读2 收藏0 评论0 15 天前

150页的剑指Offer解答PDF,它来了!!!

它来了!!!终于整理出了第一版剑指Offer的PDF,主要以Java语言为主,一共67道题,100多页。领取方式如下(无套路直接获取百度网盘的 ???? 链接,如果链接失效可以直接找我):【秦怀杂货店】公众号内发送:剑指Offer刷题仓库:CodeSolution ,具体的分类如下:数组剑指Offer(二)–二维数组中的查找剑指Offer(十三)–调整数组顺序使奇数位于偶数前面剑指Offer(十九)-- 顺时针打印矩阵剑指Offer(二十八)-- 数组中次数出现超过一半的数字剑指

置顶 原创 点赞0 阅读29 收藏0 评论0 15 天前

【实战问题】-- 布隆过滤器的三种实践:手写,Redission以及Guava(2)

前面我们已经讲过布隆过滤器的原理【实战问题】-- 缓存穿透之布隆过滤器(1),都理解是这么运行的,那么一般我们使用布隆过滤器,是怎么去使用呢?如果自己去实现,又是怎么实现呢?文章目录布隆过滤器手写布隆过滤器Redis实现Google GUAVA实现关于作者布隆过滤器再念一次定义:布隆过滤器(Bloom Filter)是由布隆(Burton Howard Bloom)在 1970 年提出的,它实际上是由一个很长的二进制向量和一系列随机hash映射函数组成(说白了,就是用二进制数组存储数据的特征)。譬

置顶 原创 点赞0 阅读20 收藏0 评论0 15 天前

Junit报错initializationError(ClassNotfoundExption:orgs.hamcrest.SelfDescribing)

在使用junit测试的时候,出现了以下错误一开始在网上查找解决方案,有些伙伴是通过project-->clean就可以解决了,我试一下发现我的还是会报错,就发现我应该是少了hamcrest相关的包,然后就下了两个(这两个包不可以)但是build path之后,发现还是不可以,就又上网去看看,网上有些伙伴说是版本问题,或者是和之前的哪些jar包冲突了,之后再次打开junit的

置顶 原创 点赞0 阅读31 收藏0 评论0 15 天前

线程与线程池的那些事之线程篇

本文关键字:线程,线程池,单线程,多线程,线程池的好处,线程回收,创建方式,核心参数,底层机制,拒绝策略,参数设置,动态监控,线程隔离线程和线程池相关的知识,是Java学习或者面试中一定会遇到的知识点,本篇我们会从线程和进程,并行与并发,单线程和多线程等,一直讲解到线程池,线程池的好处,创建方式,重要的核心参数,几个重要的方法,底层实现,拒绝策略,参数设置,动态调整,线程隔离等等。主要的大纲如下(

原创 推荐 点赞0 阅读1214 收藏0 评论0 15 天前

线程与线程池的那些事之线程篇

本文关键字:线程,线程池,单线程,多线程,线程池的好处,线程回收,创建方式,核心参数,底层机制,拒绝策略,参数设置,动态监控,线程隔离线程和线程池相关的知识,是Java学习或者面试中一定会遇到的知识点,本篇我们会从线程和进程,并行与并发,单线程和多线程等,一直讲解到线程池,线程池的好处,创建方式,重要的核心参数,几个重要的方法,底层实现,拒绝策略,参数设置,动态调整,线程隔离等等。主要的大纲如下(

原创 点赞0 阅读45 收藏0 评论0 15 天前

【实战问题】-- 布隆过滤器的三种实践:手写,Redission以及Guava(2)

前面我们已经讲过布隆过滤器的原理【实战问题】--缓存穿透之布隆过滤器(1),都理解是这么运行的,那么一般我们使用布隆过滤器,是怎么去使用呢?如果自己去实现,又是怎么实现呢?[TOC]布隆过滤器再念一次定义:布隆过滤器(BloomFilter)是由布隆(BurtonHowardBloom)在1970年提出的,它实际上是由一个很长的二进制向量和一系列随机hash映射函数组成(说白了,就是用二进制数组存

原创 点赞0 阅读267 收藏0 评论0 22 天前

不用乘法实现一个数乘以2

使用位运算可以实现:import java.util.Scanner;public class Helloworld { public static void main(String[] args) { Scanner scan=new Scanner(System.in); System.out.println("请输入一个整数:");

原创 点赞0 阅读82 收藏0 评论0 2021-04-25

不用定义第三个变量来实现两个数的交换

当两个数进行交换的时候,如果创建第三个变量则会消耗系统资源,那么我们可以使用与或运算

原创 点赞0 阅读88 收藏0 评论0 2021-04-25

实现一个数的反转,即“123”,输出时变为“321”

如果是明确的三位数,那么很容易实现,使用取余数和整除即可分离出每一位,代码如下:#includeusing namespace std;int main(){ int a; cin>>a; cout<<(a%10)*100+(a/10%10)*10+(a/100)<<endl; return 0;}但是如果不知道是多少位,只知道是整数的话,那么我们可以定义一个递归函数来实现

原创 点赞0 阅读104 收藏0 评论0 2021-04-25

如何实现三个数的排序?

由于是三个数,所以不选择数组,而是通过三次比较就可以达成,代码如下:#includeusing namespace std;int main(){ long a,b,c,t; cin>>a>>b>>c; if(a>b){t=a;a=b;b=t;}//确定了a<=b if(a>c){t=a;a=c;c=t;}//确定了a<=c if(b>c){t=b;b=c;c=t;}/

原创 点赞0 阅读83 收藏0 评论0 2021-04-25

定长顺序表--FixedLenArray类实现

实现顺序表的用C++语言和类实现顺序表属性包括:数组、实际长度、最大长度(设定为1000)操作包括:创建、插入、删除、查找输入:第1行先输入n表示有n个数据

原创 点赞0 阅读79 收藏0 评论0 2021-04-25

定长顺序表--合并操作

代码如下:#include#includeusing namespace std;class SeqList{private: int *list; int maxsize; int size;public: SeqList(int n, int *p); ~SeqList(); void add(SeqList &a);};SeqList::SeqList

原创 点赞0 阅读102 收藏0 评论0 2021-04-25

定长顺序表--查找子表操作

题目描述为定长顺序表FixedLenArray实现一个方法int findSubSeq(FixedLenArray& other, FixedLenArray& output),该方法,在this指针所代表的定长顺序表对象中,查找是否存在一个有序子表X,该子表中的元素全部依次对应other表中的所有元素.若存在,返回OK,同时output参数中包含:X中每个元素在this表中的索引

原创 点赞0 阅读45 收藏0 评论0 2021-04-25

顺序表--连续操作

题目描述建立顺序表的类,属性包括:数组、实际长度、最大长度(设定为1000)该类具有以下成员函数:构造函数:实现顺序表的初始化。插入多个数据的multiinsert(int i, int n, int item[])函数,实现在第i个位置,连续插入来自数组item的n个数据,即从位置i开始插入多个数据。删除多个数据的multidel(int i, int n)函数,实现

原创 点赞0 阅读67 收藏0 评论0 2021-04-25

DS单链表--类实现

用C++语言和类实现单链表,含头结点属性包括:data数据域、next指针域操作包括:插入、删除、查找注意:单链表不是数组,所以位置从1开始对应首结点,头结点不放数据输入n第1行先输入n表示有n个数据,接着输入n个数据第2行输入要插入的位置和新数据第3行输入要插入的位置和新数据第4行输入要删除的位置第5行输入要删除的位置第6行输入要查找的

原创 点赞0 阅读69 收藏0 评论0 2021-04-25

输入组数未知的数据,c和c++的不一样。

如何给三个字符排序?输入的组数未知。如果用c++,代码如下:#includeusing namespace std;main(){ char a,b,c,temp; while (cin>>a>>b>>c) { if(a<b) {temp=a;a=b;b=temp;} if(a<c) {temp=a;a=c;c=temp;} if(b<c) {te

原创 点赞0 阅读42 收藏0 评论0 2021-04-25

打印蛇形矩阵

根据输入的n的值,打印出大小为n*n的蛇形矩阵,效果如下:代码如下:#include#includeusing namespace std;int main(){ int n,**p,i,total=1,x=0,y,j; cin>>n; y=n-1; p=new int*[n]; for(i=0;i<n;i++) p[i]=new int[n]; f

原创 点赞0 阅读58 收藏0 评论0 2021-04-25

设计一个算法,计算出n阶乘中尾部零的个数

考虑到只要有5,或者因子为5的数,就可以产生0的尾部。假如1*2*3*4*...*250,那么250/5=50可以知道,有50个为5的倍数,但是里面有多少个为25的倍数,125的倍数...,50/5=10,可知25的倍数有10个,10/5=2,可知125的倍数有两个,以此类推,代码如下:class Solution { public: // param n : descr

原创 点赞0 阅读66 收藏0 评论0 2021-04-25

计算数字k在0到n中的出现的次数,k可能是0~9的一个值

样例例如n=12,k=1,在 [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12],我们发现1出现了5次 (1, 10, 11, 12)代码如下:class Solution {public: /* * param k : As description. * param n : As description.

原创 点赞0 阅读64 收藏0 评论0 2021-04-25

进程与线程的理解,以及run方法和start方法的区别

以下来自《Java多线程编程核心技术》---高洪岩首先百度百科对于进程的理解:听起来好像很抽象,那么再看一幅图:是的,我们完全可以把运行在内存中的exe文件理解成为进程,进程就是受操作系统管理的基本运行单位。而线程,则为在进程中独立运行的子任务。比如,一个qq软件同时运行着下载文件线程,好友视频线程,数据传输线程,发送表情线程等等。

原创 点赞0 阅读53 收藏0 评论0 2021-04-25

使用URL类下载网页文件,并网页文件统计大小

URLConnection 常用方法:String getHeaderField(String name)返回指定的头字段的值。InputStream getInputStream()返回在此打开的连接读取的输入流。String getContentEncoding()返回content-encoding头字段的值。int getContentLength()返

原创 点赞0 阅读53 收藏0 评论0 2021-04-25

Eclipse以及myeclipse的自动补全设置

最简单的修改方式::Windows——>Preferences——>Java-->Editor-->Content Asist,在Auto activation triggers for Java后面的文本框里只有一个“.”。现在你将其改为“.abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ”即可。

原创 点赞0 阅读44 收藏0 评论0 2021-04-25

使用阿里大于发送短信

使用阿里大于发送短信首先我们的目标是:使用阿里大于的短信平台来帮我们将信息发给用户,那么需要的参数就是手机号。阿里大于的网址是:https://dayu.aliyun.c 应用列表 ,如果没

原创 点赞0 阅读48 收藏0 评论0 2021-04-25

(lintcode)第632题二叉树的最大节点

要求:在二叉树中寻找值最大的节点并返回。样例给出如下一棵二叉树: 1 / \ -5 2 / \ / \0 3 -4 -5 返回值为3的节点,返回值是节点,不是数值。代码如下:public class Solution { /** * @param root the root of bina

原创 点赞0 阅读47 收藏0 评论0 2021-04-25

Ubuntu下su:authentication failure的解决办法

ubuntu虚拟机安装之后切换到到超级用户,输入ubuntu开机的密码*****@ubuntu:~$ suPassword: *********su: Authentication failure怎么输入都是密码错误,认证过不了,一度以为记错了密码。结果发现,装系统的时候,只是设置了一个普通用户的用户名和密码,而超级用户root并没有设置这时候只要输入********@

原创 点赞0 阅读38 收藏0 评论0 2021-04-25

elipse自动生成注释以及快捷键

想生成这样的:/*** 判断电话号码是否存在于数据表中* @author **** @param phoneNumber* @return Map* @since 2017-9-12* @exception Exception*/只要我们把鼠标点在要生成注释的方法名上,使用快捷键 ALT+SHIT+J ,就可以生成注释了,但是后面的内容还是要自己来填写的

原创 点赞0 阅读43 收藏0 评论0 2021-04-25

二维数组中的查找

题目描述在一个二维数组中,每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的顺序排序。请完成一个函数,输入这样的一个二维数组和一个整数,判断数组中是否含有该整数。思路:比较简单,从左下角开始,一直到右上角,比它大则往上,比它小则往右,直到相等或者超出数组的边界。代码如下:public class Solution { public boolean Fin

原创 点赞0 阅读54 收藏0 评论0 2021-04-25
申博娱乐现金网
网站地图 老虎机游戏 菲律宾太城申博 太阳城亚洲 菲律宾申博开户
菲律宾申博游戏 申博娱乐手机版 申博在线娱乐登入网址 申博管理平台登入
申博直营现金网 申博手机版 澳门大三巴赌场 申博现金网
申博游戏手机下载 申博真人游戏 极速百家乐 申博太阳城登入
申博官方网址 ag真人百家乐 申博直营现金网 百家乐真人游戏