算法
DisFney
IT
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
翻转句子中单词的顺序
题目:输入一个英文句子,翻转句子中单词的顺序,但单词内字符的顺序不变。句子中单词以空格符隔开。为简单起见,标点符号和普通字母一样处理。例如输入“I am a student.”,则输出“student. a am I”。package com.itcast.demo.random;import java.util.Scanner;public class Reverse原创 2017-09-25 09:21:36 · 301 阅读 · 0 评论 -
Java求一个整数的二进制中1的个数
题目:Java求一个整数的二进制中1的个数package cn.it.Solution;import java.util.Scanner;public class NumDemo { public static void main(String[] args) { // TODO Auto-generated method stub Scanner sc = n原创 2017-10-10 14:50:50 · 416 阅读 · 0 评论 -
java实现一只青蛙一次可以跳上1级台阶,也可以跳上2级。求该青蛙跳上一个n级的台阶总共有多少种跳法。
题目:java实现一只青蛙一次可以跳上1级台阶,也可以跳上2级。求该青蛙跳上一个n级的台阶总共有多少种跳法。package cn.it.Solution;import java.util.Scanner;public class SolutionDemo { public static void main(String[] args) { // TODO Auto-原创 2017-10-10 10:41:04 · 999 阅读 · 0 评论 -
求子数组的最大和
题目:输入一个整形数组,数组里有正数也有负数。数组中连续的一个或多个整数组成一个子数组,每个子数组都有一个和。求所有子数组的和的最大值。要求时间复杂度为O(n)。例如输入的数组为1, -2, 3, 10, -4, 7, 2, -5,和最大的子数组为3, 10, -4, 7, 2,因此输出为该子数组的和18。package com.itcast.demo.ra原创 2017-09-22 13:50:30 · 268 阅读 · 0 评论 -
把二元查找树转变成排序的双向链表
题目:输入一棵二元查找树,将该二元查找树转换成一个排序的双向链表。要求不能创建任何新的结点,只调整指针的指向。 10 / / 6 14 / / / /4 8 12 16 转换成双向链表4=6=8=10=12=14=16。package com.itcast.demo.random;import java.util.Ar原创 2017-09-21 16:39:17 · 246 阅读 · 0 评论 -
输入一颗二元查找树,将该树转换为它的镜像, 即在转换后的二元查找树中,左子树的结点都大于右子树的结点。 用递归和循环两种方法完成树的镜像转换:
题目:输入一颗二元查找树,将该树转换为它的镜像,即在转换后的二元查找树中,左子树的结点都大于右子树的结点。用递归和循环两种方法完成树的镜像转换。 例如输入: 8 / / 6 10 // //5 7 9 11输出: 8 / / 10 6 // //11 9 7 5package cn.itcast.demo.Mir原创 2017-09-28 14:06:07 · 525 阅读 · 0 评论 -
给你10分钟时间,根据上排给出十个数,在其下排填出对应的十个数
给你10分钟时间,根据上排给出十个数,在其下排填出对应的十个数要求下排每个数都是先前上排那十个数在下排出现的次数。上排的十个数如下:【0,1,2,3,4,5,6,7,8,9】举一个例子,数值: 0,1,2,3,4,5,6,7,8,9分配: 6,2,1,0,0,0,1,0,0,00在下排出现了6次,1在下排出现了2次,2在下排出现了1次,3在下排出现了0次..原创 2017-09-19 23:34:32 · 469 阅读 · 0 评论 -
题目:n个数字(0,1,…,n-1)形成一个圆圈,从数字0开始, 每次从这个圆圈中删除第m个数字(第一个为当前数字本身,第二个为当前数字的下一个数字)。 当一个数字删除后,从被删除数字的下一个继续删除
题目:n个数字(0,1,…,n-1)形成一个圆圈,从数字0开始,每次从这个圆圈中删除第m个数字(第一个为当前数字本身,第二个为当前数字的下一个数字)。当一个数字删除后,从被删除数字的下一个继续删除第m个数字。求出在这个圆圈中剩下的最后一个数字。package cn.it.demo.linked;import java.util.LinkedList;impor原创 2017-09-27 15:45:41 · 1022 阅读 · 0 评论 -
输入一个表示整数的字符串,把该字符串转换成整数并输出。
题目:输入一个表示整数的字符串,把该字符串转换成整数并输出。例如输入字符串"345",则输出整数345。 package cn.itcast.number;import java.util.Scanner;public class StringtoNUM { public int Stn(String str){ int n=0; int i=0; if原创 2017-09-27 11:17:09 · 4271 阅读 · 0 评论 -
输入一个单向链表,输出该链表中倒数第k个结点。链表的倒数第0个结点为链表的尾指针
package com.itcast.demo.ListNode;import java.util.Scanner;public class ListNodeDemo { public static void main(String[] args) { ListNodeDemo knode = new ListNodeDemo(); System.out.println("请原创 2017-09-25 17:08:49 · 800 阅读 · 0 评论 -
求1+2+…+n
要求不能使用乘除法、for、while、if、else、switch、case等关键字以及条件判断语句(A?B:C)。package com.itcast.demo.random;import java.util.Scanner;public class HierarchyDemo { /** * @param args */ public static原创 2017-09-25 14:50:00 · 249 阅读 · 0 评论 -
求二叉树中节点的最大距离
题目:如果我们把二叉树看成一个图,父子节点之间的连线看成是双向的,我们姑且定义"距离"为两节点之间边的个数。写一个程序,求一棵二叉树中相距最远的两个节点之间的距离。 分析:计算一个二叉树的最大距离有两个情况:情况A: 路径经过左子树的最深节点,通过根节点,再到右子树的最深节点。情况B: 路径不穿过根节点,而是左子树或右子树的最大距离路径,取其大者。原创 2017-09-25 09:36:54 · 450 阅读 · 0 评论 -
如何计算超出精度数字的加减运算
使用javascript计算如下的结果:63298532574392574384 + 1 = ?结果:63298532574392570000为什么会出现这种情况呢?不应该是63298532574392574385吗?这引发了我的思考得到结果后可以看出,直接处理肯定是不行了。因为这段数字超出了Number数据类型的精度,javascript 不能存这么长的数字。如果必须运算的话那只原创 2017-11-13 15:04:15 · 463 阅读 · 0 评论
分享