
实战实例
玩转程序
技术改变生活
展开
-
实例3:递归和循环——斐波那契数列
问题描述:大家都知道斐波那契数列,现在要求输入一个整数n,请你输出斐波那契数列的第n项。n<=39知识拓展:递归的一个简单定义:当函数直接或者间接调用自己时,则发生了递归。递归构造包括两个部分:定义递归头:什么时候不调用自身方法,如果没有头,将陷入死循环递归体:什么时候需要调用自身方法。问题分析:斐波那契数列:F(0)=0,F(1)=1, F(n)=F(n-1)+F(n-...原创 2018-03-02 17:33:03 · 286 阅读 · 0 评论 -
实例1:字符串——替换空格
问题描述: 请实现一个函数,将一个字符串中的空格替换成“%20”。例如,当字符串为We Are Happy.则经过替换之后的字符串为We%20Are%20Happy。问题分析:要实现将字符串中的空格替换成其他的东西,可以使用字符串原生的方法replace(int start,int end,String str);代码实现:public class Demo1 { public s...原创 2018-03-01 17:29:26 · 360 阅读 · 1 评论 -
实例2:栈和队列——用两个栈实现队列
问题描述:用两个栈来实现一个队列,完成队列的Push和Pop操作。 队列中的元素为int类型。知识拓展:栈(Stack)和队列(Queue)是两种操作受限的线性表。线性表:线性表是一种线性结构,它是一个含有n≥0个结点的有限序列,同一个线性表中的数据元素数据类型相同并且满足“一对一”的逻辑关系。“一对一”的逻辑关系指的是对于其中的结点,有且仅有一个开始结点没有前驱但有一个后继结点,有且仅有...原创 2018-03-01 18:06:31 · 460 阅读 · 0 评论 -
实例4:发散思维能力——不用加减乘除做加法
问题描述:写一个函数,求两个整数之和,要求在函数体内不得使用+、-、*、/四则运算符号。知识拓展:&:与(x&y)两二进制上下比较只有位值都为1时才取1,否则取0。例如:14&15 (14 二进制 1110,15 二进制 1111 ——&与的结果 :1110 ---->结果14)|:或(x|y)两二进制上下比较只有位值都为0时才取0,否...原创 2018-03-06 17:56:56 · 297 阅读 · 0 评论