- 博客(8)
- 资源 (1)
- 收藏
- 关注
原创 Java 效率较高的判断任意回文数的两种方法
第一种:适用于对于给定的任意的int数值,有较高的效率进行回文的判断。先判断数值的位数,然后将数字按位存入数组中,再利用双指针依次判断。第二种:适用于对于任意长度的数值(远远超过Integer范围),该方法也可用于判断任意字符串是否回文。该方法也是利用了双指针来进行判断。从整体上来讲效率还是不错。第一种方法时间复杂度O(n),空间复杂度O(n)。第二种时间复杂度O(n),空间复杂度O(1)。我们将这两种方法拿到。
2023-05-06 13:43:30 189
原创 关于网上很火的三门问题的一点见解
你选择换或者不换,最后的结果都是既定的事实,而不会因为主持人的行为而产生变化。最近在网上看到一个三门问题,感觉很有意思,这个问题是这样的:说你在参加一个抽奖节目,在你的面前有三道门,其中一道门里有价值百万美金的奖品,而其余两扇门则空空如也。就行了,因为主持人已经打开了一扇空门,而我如果选择换门的话,那么看的就是我的号码和正确的号码不相等的概率有多大。如果我一开始选择的号码和正确的门的号码不相等,那么我将换到正确的门上。最后经过我多次的模拟(每次模拟10w次),发现选择换门的话,选择成功的概率高达60%多!
2023-04-24 23:26:49 233
原创 Java 回溯算法 迷宫回溯问题
这个程序目前只能以最笨的方式找到迷宫出口,毕竟它的决策只知道下,右,上,左,如果碰到最坏的情况,它需要遍历完所有可走路径才能找到出口。1表示是围墙,不能走,0表示是可以走的格子。迷宫入口被设计在了左上角,出口则是在右下角。程序走过的路径被标上数字2。
2022-11-18 21:48:22 256
原创 Java使用栈实现综合计算器(中缀表达式转后缀表达式)
对于一般用来表达算式的字符串,形如"10+((2+3)*4)-5",我们可不可以自己手写一个计算器用来计算其结果呢?4.编写一个计算后缀表达式的方法,计算后缀表达式的思路为:遍历后缀表达式,遇到数字则直接压栈;,如:10+((2+3)*4)-5的后缀表达式为:10 2 3 + 4 * + 5 -。这也是代码的核心部分。3.本文目的是实现后缀表达式的计算,所以在调用getList()方法拿到中缀表达式集合后,我们还需要将。最近在深入学习栈数据结构,顺便实现了一下用栈实现一个整数计算器的功能。
2022-11-18 00:24:04 627
原创 Java判断任意一个数是否是回文数的2种简单写法
第二种:利用StringBuilder的reverse()函数,该函数可直接将StringBuilder对象逆序。我们先将原StringBuilder对象转换成字符串1,再调用reverse()函数将新StringBuilder对象转换成字符串2,比较字符串1和2即可。第一种:把将要判断的数从尾部逆序依次取出并形成一个新的字符串,用新的字符串与原字符串进行比对即可。
2022-11-09 23:23:07 1967
原创 在编译Java程序时,用于指定生成.class文件位置的选项是
在编译Java程序时,用于指定生成.class文件位置的选项是______。A.-gB.-dC.-verboseD.-nowarn选B。
2021-05-13 21:58:12 1516
原创 关于实现生产者和消费者/交替输出奇偶数
public class Test { public static void main(String[] args) { Num i = new Num(0); Producer p = new Producer(i); Consumer c = new Consumer(i); p.setName("奇数线程"); c.setName("偶数线程"); p.start(); c.star
2021-03-17 20:07:07 148 1
自己用Java Swing开发的一个图像处理软件(源码)
2022-06-06
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人