E-COM-NET
首页
在线工具
Layui镜像站
SUI文档
联系我们
推荐频道
Java
PHP
C++
C
C#
Python
Ruby
go语言
Scala
Servlet
Vue
MySQL
NoSQL
Redis
CSS
Oracle
SQL Server
DB2
HBase
Http
HTML5
Spring
Ajax
Jquery
JavaScript
Json
XML
NodeJs
mybatis
Hibernate
算法
设计模式
shell
数据结构
大数据
JS
消息中间件
正则表达式
Tomcat
SQL
Nginx
Shiro
Maven
Linux
华为oj
华为oj
求二叉树的深度和宽度
题目标题:求二叉树的宽度和深度给定一个二叉树,获取该二叉树的宽度和深度。例如输入a/\bc/\/\defg返回3.接口说明原型:intGetBiNodeInfo(BiNode&head,unsignedint*pulWidth,unsignedint*pulHeight)输入参数:head需要获取深度的二叉树头结点输出参数(指针指向的内存区域保证有效):pulWidth宽度pulHeight高度返
Ivaan阿伟哥哥
·
2016-03-09 20:23
C语言
华为oj
迭代器
#ifndefSLICE_ITERATOR_H#defineSLICE_ITERATOR_H#include#defineMAX_COORD_NUM10typedefstruct{unsignedlongstart;//起始下标unsignedlongend;//结束下标}CoordSlice;typedefstruct{int*first_element_of_orignal_array;//原
Ivaan阿伟哥哥
·
2016-03-08 13:18
C语言
华为oj
在字符串中找出连续最长的数字串
记得好像是去年有个公司的编程题,简单题,用一个位置s,和一个最大长度maxlen,每次寻找找到大于maxlen就更新这两个值就可以了,思路很简单!#includeusingnamespacestd;intmain(){charin[100];gets_s(in);intlen=strlen(in);if(len==0){cout='0'&&in[i]max){max=sum;start=temps
grace_fool
·
2016-03-07 10:17
华为oj
初级
华为oj
矩阵相乘2
#include"oj.h"#includeintmain(){inti=0,j=0;intA[3][3]={{1,2,3},{4,5,6},{7,8,9}};intB[3][3]={{1,2,3},{4,5,6},{7,8,9}};intC[3][3]={0};matrix((int**)A,(int**)B,(int**)C,3);for(i=0;i<3;i++){for(j=0;j<3;j+
Ivaan阿伟哥哥
·
2016-03-06 16:01
C语言
华为oj
放苹果
运用递归:1.当盘子数多多余苹果数,多余的盘子肯定没有用了,所以getCount(m,m)2.反之有两种情况,一是将所有的盘子都用了那么每个盘子至少有一个苹果即getCount(m-n,n),二是至少有一个盘子没有即getCount(m,n-1)#includeusingnamespacestd;intgetCount(intm,intn){if(m==0||n=1){return1;}if(n>
grace_fool
·
2016-03-02 19:27
华为oj
初级
华为oj
学英语
直接copy别人的感觉他的程序很直观很好理解,具体那位大神的链接忘了,勿怪!注意事项:对于什么时候加‘and’请注意!举个例子110------onehundredandten101------onehundredandone1001------onehundredone#include#includeusingnamespacestd;strings1[20]={"one","two","thr
grace_fool
·
2016-03-01 10:10
华为oj
初级
华为oj
:
/*1 111 12321 1367631 14101619161041以上三角形的数阵,第一行只有一个数1,以下每行的每个数,是恰好是它上面的数,左上角数到右上角的数,3个数之和(如果不存在某个数,认为该数就是0)。求第n行第一个偶数出现的位置。如果没有偶数,则输出-1。例如输入3,则输出2,输入4则输出3。*/从第三行开始规律为偶数位置2324的变化#include #include #inc
huheqing
·
2016-02-24 10:00
华为OJ
:计算两个自然时间相加
按要求一步步做就好importjava.util.Scanner; publicclassdateAdd{ publicstaticvoidmain(Stringargs[]){ Scannerinput=newScanner(System.in); Strings1=input.next(); Strings2=input.next(); ints11=Integer.parseInt(s1.s
mengfanrong
·
2016-02-14 12:00
华为OJ
高级题(一) 铁路栈问题
说实话,
华为Oj
上的题目分级并不是完全合理,像这道铁路栈问题,其实就是一道判断出栈队列是否可能的数据结构题,最多也就是一道中级题吧,可我居然在高级题分类里找到它。
hzy38324
·
2016-02-05 12:00
华为
OJ
铁路栈
两个任意长度的长整数相乘(
华为oj
,C++)
#include"oj.h"#includeintmain(void){stringstrMultiplierA="9999";stringstrMultiplierB="9999";stringstrRst="\0";multiply(strMultiplierA,strMultiplierB,strRst);cout0)//判断结果有几位{if(p[c]!=0){strRst_length=c
Ivaan阿伟哥哥
·
2016-02-04 15:36
两个任意长度的长整数相乘(C语言、双向链表方法)
注意:本文并非
华为oj
原题/*****************************************************************************Prototype:
Ivaan阿伟哥哥
·
2016-02-04 00:34
C语言
华为oj
素数伴侣
题目描述若两个正整数的和为素数,则这两个正整数称之为“素数伴侣”,如2和5、6和13,它们能应用于通信加密。现在密码学会请你设计一个程序,从已有的N(N为偶数)个正整数中挑选出若干对组成“素数伴侣”,挑选方案多种多样,例如有4个正整数:2,5,6,13,如果将5和6分为一组中只能得到一组“素数伴侣”,而将2和5、6和13编组将得到两组“素数伴侣”,能组成“素数伴侣”最多的方案称为“最佳方案”,当然
uestclr
·
2016-02-03 18:00
算法
STL
华为OJ
素数伴侣
华为OJ
:统计大写字母个数
这道题我错了一次,主要是A跟Z边界没有考虑,其它的就是记得測试时用nextLine,由于字符串可能可能有空格。importjava.util.Scanner; publicclassbigLetterCount{ publicstaticintCalcCapital(Stringstr){ intcount=0; for(inti=0;i
lcchuguo
·
2016-02-02 19:00
华为OJ
:统计大写字母个数
这道题我错了一次,主要是A跟Z边界没有考虑,其它的就是记得測试时用nextLine,由于字符串可能可能有空格。importjava.util.Scanner; publicclassbigLetterCount{ publicstaticintCalcCapital(Stringstr){ intcount=0; for(inti=0;i
lcchuguo
·
2016-02-02 19:00
华为OJ
中级题-单词倒排
题目描述对字符串中的所有单词进行倒排。说明:1、每个单词是以26个大写或小写英文字母构成;2、非构成单词的字符均视为单词间隔符;3、要求倒排后的单词间隔符以一个空格表示;如果原字符串中相邻单词间有多个间隔符时,倒排转换后也只允许出现一个空格间隔符;4、每个单词最长20个字母;样例输入Iamastudent样例输入studentaamIvoidHWoj(){ stringstr,dst; vecto
baidu_17313961
·
2016-01-28 14:00
华为
Java算法---
华为oj
矩阵乘法
importjava.util.Scanner;/***CreatedbyAdministratoron2015/01/18.*/publicclassMain{publicstaticvoidmain(String[]args){Scannersc=newScanner(System.in);while(sc.hasNext()){intMarx1hang=sc.nextInt();intMar
镜中阿猫
·
2016-01-18 11:23
Java
Web
华为oj
之 蜂窝小区最短距离
/*学习了一种新的解题方法,很巧妙,利用坐标系来解题。参考:http://blog.csdn.net/nys001/article/details/12637201*/1#include 2#include 3#include 4#include 5#include 6#include 7#include 8#include 9#include 10#include 11#in
JmingS
·
2016-01-13 05:00
华为oj
之 整数分隔
/*(1)如果是奇数:dp[i] = dp[i-1]相当于在(i-1)每个分隔的前面添了一个1(2)如果是偶数:dp[i] = dp[i-1] + dp[i/2]相当于在(i-1)每个分隔的前面添了一个1,同时(i/2)的每个分隔乘以2eg:2:1 123:1 1 11 24:1 1 1 11 1 22 24*/1#include 2#include 3#include 4#include
JmingS
·
2016-01-11 21:00
华为oj
之 判断点是否在三角形内
/**任意顶点为A、B、C的三角形,如果点P在三角形内,那么*1)点P和点C在AB边的同一侧2)点P和点A在BC边的同一侧3)点P和点B在AC边的同一侧*反之亦然(充要条件)**关键:如何判断某两个点在某条直线的同一侧*参考图示发现:* 对于点P:AB*BC的方向和AB*BP的方向相同* 对于点P1:AB*BC的方向和AB*BP1的方向不同*故:对于边AB,以及点C、P,如果AB*BC的方向和A
JmingS
·
2016-01-11 03:00
2016年1月10日 写个非计算机专业的小伙伴
离放假还有一个月,本来想把操作系统、计算机网络通信、数据结构和算法、C++primer过个一遍,现在看有点难了,
华为oj
初级题目也还没有刷完。
huheqing
·
2016-01-10 16:00
心得
坚持
共勉
华为oj
:称砝码
/*现有一组砝码,重量互不相等,分别为m1、m2……mn;他们可取的最大数量分别为x1、x2……xn。现在要用这些砝码去称物体的重量,问能称出多少中不同的重量。注:称重重量包括0输入intn:n表示有多少组重量不同的砝码,1 #include #include #include #definemaxNum100000 usingnamespacestd; intmain(){ intn,i,j,
huheqing
·
2016-01-10 16:00
华为
称砝码-oj-c++
华为oj
:输入一行字符,分别统计出包含英文字母、空格、数字和其它字符的个数
\/;p0-=\][样例输出2631012*/
华为oj
测试的时候,一般输出都会采用换行格式,不然编译说格式错误,请大家注意#include #include #include #include #include
huheqing
·
2016-01-05 20:00
测试
华为
oj-c++
华为oj
:判断两个IP是否属于同一个子网
/*描述子网掩码是用来判断任意两台计算机的IP地址是否属于同一子网络的根据。子网掩码与IP地址结构相同,是32位二进制数,其中网络号部分全为“1”和主机号部分全为“0”。利用子网掩码可以判断两台主机是否中同一子网中。若两台主机的IP地址分别与它们的子网掩码相“与”后的结果相同,则说明这两台主机在同一子网中。示例:IP地址192.168.0.1子网掩码255.255.255.0转化为二进制进行运算:
huheqing
·
2015-12-27 11:00
网络
二进制
计算机
华为
32位
华为oj
:字符串加密
/*描述有一种技巧可以对数据进行加密,它使用一个单词作为它的密匙。下面是它的工作原理:首先,选择一个单词作为密匙,如TRAILBLAZERS。如果单词中包含有重复的字母,只保留第1个,其余几个丢弃。现在,修改过的那个单词死于字母表的下面,如下所示:ABCDEFGHIJKLMNOPQRSTUVWXYZTRAILBZESCDFGHJKMNOPQUVWXY上面其他用字母表中剩余的字母填充完整。在对信息进
huheqing
·
2015-12-26 19:00
加密
数据
华为
oj-c++
华为oj
:蛇形矩阵
/*描述题目说明蛇形矩阵是由1开始的自然数依次排列成的一个矩阵上三角形。样例输入5样例输出136101525914481371211接口说明原型voidGetResult(intNum,char*pResult);输入参数:intNum:输入的正整数N输出参数:int*pResult:指向存放蛇形矩阵的字符串指针指针指向的内存区域保证有效返回值:void知识点数组输入输入正整数N(N不大于100)
huheqing
·
2015-12-25 12:00
华为
oj-c++
华为oj
:字符串加解密
/*描述题目描述1、对输入的字符串进行加解密,并输出。2加密方法为:当内容是英文字母时则用该英文字母的后一个字母替换,同时字母变换大小写,如字母a时则替换为B;字母Z时则替换为a;当内容是数字时则把该数字加1,如0替换1,1替换2,9替换0;其他字符不做变化。3、解密方法为加密的逆过程。接口描述:实现接口,每个接口实现1个基本操作:voidEncrypt(charaucPassword[],cha
huheqing
·
2015-12-25 11:00
加密
解密
华为
oj-c++
华为oj
:计算字符串最后一个单词的长度,单词用空格隔开
/*描述计算字符串最后一个单词的长度,单词以空格隔开。知识点字符串,循环运行时间限制0M内存限制0输入一行字符串,长度小于128。输出整数N,最后一个单词的长度。样例输入helloworld样例输出5*/#include #include usingnamespacestd; intmain(){ stringstr; getline(cin,str); intlength_word=0;//单
huheqing
·
2015-12-24 11:00
华为oj-C++
华为OJ
:合唱队
/*计算最少出列多少位同学,使得剩下的同学排成合唱队形说明:N位同学站成一排,音乐老师要请其中的(N-K)位同学出列,使得剩下的K位同学排成合唱队形。合唱队形是指这样的一种队形:设K位同学从左到右依次编号为1,2…,K,他们的身高分别为T1,T2,…,TK,则他们的身高满足存在i(1usingnamespacestd;#definemaxNum1000intmain(){intarr[maxNum
hhq99
·
2015-12-24 11:57
华为oj
华为OJ
:合唱队
/*计算最少出列多少位同学,使得剩下的同学排成合唱队形说明:N位同学站成一排,音乐老师要请其中的(N-K)位同学出列,使得剩下的K位同学排成合唱队形。合唱队形是指这样的一种队形:设K位同学从左到右依次编号为1,2…,K,他们的身高分别为T1,T2,…,TK,则他们的身高满足存在i(1 usingnamespacestd; #definemaxNum1000 intmain(){ intarr[m
huheqing
·
2015-12-24 11:00
华为oj-C++
华为oj
:图片管理
/*描述Lily上课时使用字母数字图片教小朋友们学习英语单词,每次都需要把这些图片按照大小(ASCII码值从小到大)排列收好。请大家给Lily帮忙,通过C语言解决。知识点字符串运行时间限制0M内存限制0输入Lily使用的图片包括”A”到”Z”、”a”到”z”、”0”到”9”。输入字母或数字个数不超过1024。输出Lily的所有图片按照从小到大的顺序输出样例输入Ihave1nose2hands10f
huheqing
·
2015-12-24 11:00
Java算法---
华为oj
迷宫问题求解(广度优先搜索)
一万年太久,只争朝夕,只有坚持,才能胜利,经过昨天的努力,解决了广度优先算法实现迷宫问题,题目在这里不赘述,如果不知道题目的请看我的上一篇博客Java算法---
华为oj
迷宫问题求解,这里面说的很详细,下来就直奔主题
镜中阿猫
·
2015-12-22 11:11
Java
Web
Java算法---
华为oj
迷宫问题求解(深度优先搜索)
自己花了好长时间学习了深度优先搜索算法,受益颇多,网上许多资料都看不太懂,最后自己按着那个思想一步一步实现了,分享一下,以
华为oj
上的迷宫问题为例来说一下:问题描述:定义一个二维数组N*M(其中2importjava.util.Scanner
镜中阿猫
·
2015-12-21 09:55
Java
Web
华为OJ
中级题-.坐标移动
开发一个坐标计算工具,A表示向左移动,D表示向右移动,W表示向上移动,S表示向下移动。从(0,0)点开始移动,从输入字符串里面读取一些坐标,并将最终输入结果输出到输出文件里面。输入:合法坐标为A(或者D或者W或者S)+数字(两位以内)坐标之间以;分隔。非法坐标点需要进行丢弃。如AA10;A1A;$%$;YAD;等。下面是一个简单的例子如:A10;S20;W10;D30;X;A1A;B10A11;;
baidu_17313961
·
2015-12-11 12:00
C++
华为
华为OJ
中级题-识别有效的IP地址和掩码并进行分类统计
请解析IP地址和对应的掩码,进行分类识别。要求按照A/B/C/D/E类地址归类,不合法的地址和掩码单独归类。所有的IP地址划分为A,B,C,D,E五类A类地址1.0.0.0~126.255.255.255;B类地址128.0.0.0~191.255.255.255;C类地址192.0.0.0~223.255.255.255;D类地址224.0.0.0~239.255.255.255;E类地址240
baidu_17313961
·
2015-12-11 10:00
C++
华为
华为OJ
中级题-密码验证合格程序
密码要求:1.长度超过8位2.包括大小写字母.数字.其它符号,以上四种至少三种3.不能有相同长度超2的子串重复boolfunJGM(stringtest){ intlen=test.length(); intindex[4]={0};//0数字,1大写,2小写,3其他符号 if(len>8){ for(inti=0;i=3){returntrue;} else{returnfalse;} } e
baidu_17313961
·
2015-12-10 15:00
C++
华为
华为OJ
中级题-简单密码破解
密码是我们生活中非常重要的东东,我们的那么一点不能说的秘密就全靠它了。哇哈哈.接下来渊子要在密码之上再加一套密码,虽然简单但也安全。假设渊子原来一个BBS上的密码为zvbo9441987,为了方便记忆,他通过一种算法把这个密码变换成YUANzhi1987,这个密码是他的名字和出生年份,怎么忘都忘不了,而且可以明目张胆地放在显眼的地方而不被别人知道真正的密码。他是这么变换的,大家都知道手机上的字母:
baidu_17313961
·
2015-12-10 14:00
C++
华为OJ
中级题-汽水瓶
有这样一道智力题:“某商店规定:三个空汽水瓶可以换一瓶汽水。小张手上有十个空汽水瓶,她最多可以换多少瓶汽水喝?”答案是5瓶,方法如下:先用9个空瓶子换3瓶汽水,喝掉3瓶满的,喝完以后4个空瓶子,用3个再换一瓶,喝掉这瓶满的,这时候剩2个空瓶子。然后你让老板先借给你一瓶汽水,喝掉这瓶满的,喝完以后用3个空瓶子换一瓶满的还给老板。如果小张手上有n个空汽水瓶,最多可以换多少瓶汽水喝?//m==2时可以借
baidu_17313961
·
2015-12-10 13:00
C++
华为OJ
中级题-删除字符串中出现次数最少的字符
实现删除字符串中出现次数最少的字符,若多个字符出现次数一样,则都删除。输出删除这些单词后的字符串,字符串中其它字符保持原来的顺序。voidHWoj(){ stringtest="aaaabbbcc",Outstr=""; intbook[256]={0}; intlen=test.length(),mined=1; for(inti=0;imined){Outstr.push_back(test[
baidu_17313961
·
2015-12-10 12:00
C++
华为OJ
中级题-字符串排序
编写一个程序,将输入字符串中的字符按如下规则排序。规则1:英文字母从A到Z排列,不区分大小写。如,输入:Type输出:epTy规则2:同一个英文字母的大小写同时存在时,按照输入顺序排列。如,输入:BabA输出:aABb规则3:非英文字母的其它字符保持原来的位置。如,输入:By?e输出:Be?yvoidTestChar() { stringtest="tBay?fze"; couttolower(t
baidu_17313961
·
2015-12-10 12:00
C++
排序
java实现求两个字符串最长公共子串的方法
分享给大家供大家参考,具体如下:这个是
华为OJ
上的一道题目。
NW_KNIFE
·
2015-12-09 14:14
华为OJ
中级题-查找兄弟单词
boolfindBrother(stringx,stringy){ intlen=x.length(); if(len!=y.length()){returnfalse;} if(x==y){returnfalse;} intbook[256]={0},book2[256]={0}; for(inti=0;iwords,outStr; stringtmp; cin>>N; while(N--){
baidu_17313961
·
2015-12-08 08:00
C++
华为
华为OJ
中级题-字符串合并处理
按照指定规则对输入的字符串进行处理。详细描述:将输入的两个字符串合并。对合并后的字符串进行排序,要求为:下标为奇数的字符和下标为偶数的字符分别从小到大排序。这里的下标意思是字符在字符串中的位置。对排训后的字符串进行操作,如果字符为‘0’——‘9’或者‘A’——‘F’或者‘a’——‘f’,则对他们所代表的16进制的数进行BIT倒序的操作,并转换为相应的大写字符。如字符为‘4’,为0100b,则翻转后
baidu_17313961
·
2015-12-07 18:00
C++
华为
华为OJ
基础篇-字符串加解密
题目描述1、对输入的字符串进行加解密,并输出。2加密方法为:当内容是英文字母时则用该英文字母的后一个字母替换,同时字母变换大小写,如字母a时则替换为B;字母Z时则替换为a;当内容是数字时则把该数字加1,如0替换1,1替换2,9替换0;其他字符不做变化。3、解密方法为加密的逆过程。charJiaM(charx){ charresult=''; if(x='0'){ if(x=='9'){result
baidu_17313961
·
2015-12-07 14:00
C++
华为
华为OJ
中级题-字符串运用-密码截取
Catcher是MCA国的情报员,他工作时发现敌国会用一些对称的密码进行通信,比如像这些ABBA,ABA,A,123321,但是他们有时会在开始或结束时加入一些无关的字符以防止别国破解。比如进行下列变化ABBA->12ABBA,ABA->ABAKK,123321->51233214。因为截获的串太长了,而且存在多种可能的情况(abaaab可看作是aba,或baaab的加密形式),Cathcer的工
baidu_17313961
·
2015-12-07 13:00
C++
华为
华为OJ
基础篇-蛇形矩阵
蛇形矩阵是由1开始的自然数依次排列成的一个矩阵上三角形。voidHWoj(){intN=6;intstart=1,k=1,m=2;inttmp=0;while(N--){tmp=start;for(inti=start,j=m;i<=start+N;++i,++j){cout<<tmp<<"";tmp=tmp+j;}tmp=0;start+=k;++m;++k;cout<<endl;}}
Ethan_Lei_Pro
·
2015-12-03 10:26
华为OJ基础题
C++
华为
华为OJ
基础篇-蛇形矩阵
蛇形矩阵是由1开始的自然数依次排列成的一个矩阵上三角形。voidHWoj(){ intN=6; intstart=1,k=1,m=2; inttmp=0; while(N--){ tmp=start; for(inti=start,j=m;i<=start+N;++i,++j){ cout<
baidu_17313961
·
2015-12-03 10:00
C++
华为
华为oj
之兄弟单词
#include #include #include usingnamespacestd; intmain(){ intn,num,count=0; scanf("%d\n",&n); /*word表示查找的单词*/ stringword; /*输入的n个单词*/ string*str=newstring[n]; intflag[26]={}; intflagword[26]={}; int*p
uestclr
·
2015-12-01 09:00
算法
华为OJ
兄弟单词
华为OJ
基础篇-字符串加密
有一种技巧可以对数据进行加密,它使用一个单词作为它的密匙。下面是它的工作原理:首先,选择一个单词作为密匙,如TRAILBLAZERS。如果单词中包含有重复的字母,只保留第1个,其余几个丢弃。现在,修改过的那个单词死于字母表的下面,如下所示:ABCDEFGHIJKLMNOPQRSTUVWXYZTRAILBZESCDFGHJKMNOPQUVWXY上面其他用字母表中剩余的字母填充完整。在对信息进行加密时
baidu_17313961
·
2015-11-26 13:00
C++
华为OJ
中级篇-统计每个月兔子的总数
有一对兔子,从出生后第3个月起每个月都生一对兔子,小兔子长到第三个月后每个月又生一对兔子,假如兔子都不死,问每个月的兔子总数为多少?吐槽:用笔在纸上算了算发现就是一个斐波那契数列。。。。。intTuZi(intnum){ if(num==0) return0; elseif(num==1) return1; else returnTuZi(num-1)+TuZi(num-2); } voidHWo
baidu_17313961
·
2015-11-26 11:00
C++
华为OJ
基础篇-求小球落地5次后所经历的路程和第5次反弹的高度
假设一个球从任意高度自由落下,每次落地后反跳回原高度的一半;再落下,求它在第5次落地时,共经历多少米?第5次反弹多高?voidHWoj(){ intn=1; intk=1; doubles=0.0,h; h=(double)n+0.0; s=s+h; while(k1){s+=h;} h=((double)h)/2.0; s+=h; ++k; } s-=h; cout<
baidu_17313961
·
2015-11-26 10:00
C++
上一页
6
7
8
9
10
11
12
13
下一页
按字母分类:
A
B
C
D
E
F
G
H
I
J
K
L
M
N
O
P
Q
R
S
T
U
V
W
X
Y
Z
其他