![](https://img-blog.csdnimg.cn/20201014180756928.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
数据结构
silencer1024
这个作者很懒,什么都没留下…
展开
-
使用队列实现栈
push(x) – 元素 x 入栈pop() – 移除栈顶元素top() – 获取栈顶元素empty() – 返回栈是否为空public class Test2 {private Queue<Integer> queue1 = new LinkedList<>();private Queue<Integer> queue2 = new LinkedList<>();//入栈public void push(int x){ queue1原创 2020-08-22 21:43:09 · 132 阅读 · 0 评论 -
输入两个字符串,从第一字符串中删除第二个字符串中所有的字符。例如,输入”They are students.”和”aeiou”,则删除之后的第一个字符串变成”Thy r stdnts.”
输入:每个测试输入包含2个字符串输出:输出删除后的字符串输入:They are studentsaeiou输出:Thy r stdnts思路:直接简单暴力一点,传进来两个字符串,str1是要根据str2来删除的,先将str1转成char类型数据保存数组里面,然后for循环,用contains方法检测只要不是str2里面的字符串就直接输出import java.util.Scanner;public class Main {public static void main(String[] ar原创 2020-08-21 23:26:21 · 652 阅读 · 0 评论 -
对于一个字符串,请设计一个算法,判断其是否为一个合法的括号串。 给定一个字符串A和它的长度n,请返回一个bool值代表它是否为一个合法的括号串。
测试用例:"(()())",6返回:true测试用例:"()a()()",7返回:false测试用例:"()(()()",7返回:false思路:1.碰到")“开始弹出栈顶的”(",如果此时栈为空,则返回false2.碰到其他内容直接返回false3.字符串结尾时,栈非空返回falsepublic class Main2 {public static boolean chkParenthesis(String string, int n){ Stack<Character&原创 2020-08-20 21:06:41 · 476 阅读 · 0 评论 -
读入一个字符串str,输出字符串str中的连续最长的数字串
输入:abcd12345ed125ss123456789输出:123456789思路:用max表示经过的数字长度最大值,count表示数字计数器,当为字母时重置为0,end表示数字尾部,每次满足数字时,对max进行判断,当max小于于count时,更新max和endpublic class Main1 {public static void main(String[] args) { Scanner scanner = new Scanner(System.in); while (s原创 2020-08-20 21:03:15 · 854 阅读 · 0 评论 -
二维数组的实现及打印
以int类型为例public class Array {public static void main(String[] args) {int[][] array = new int[][]{{1,2,3,},{4,5,6}}; //第一种for循环打印 for (int i = 0; i < array.length; i++) { for (int j = 0; j < array[i].length; j++) { System原创 2020-08-18 16:47:13 · 507 阅读 · 0 评论 -
“回文串”是一个正读和反读都一样的字符串。比如“level”或者“noon”等等就是回文串。花花非常喜欢这种拥有对称美的回文串,生日的时候她得到两个礼物分别是字符串A和字符串B。
“回文串”是一个正读和反读都一样的字符串,比如“level”或者“noon”等等就是回文串。花花非常喜欢这种拥有对称美的回文串,生日的时候她得到两个礼物分别是字符串A和字符串B。现在她非常好奇有没有办法将字符串B插入字符串A使产生的字符串是一个回文串。你接受花花的请求,帮助她寻找有多少种插入办法可以使新串是一个回文串。如果字符串B插入的位置不同就考虑为不一样的办法。例如:A = “aba”,B = “b”。这里有4种把B插入A的办法:在A的第一个字母之前: “baba” 不是回文在第一个字母‘a’原创 2020-08-17 16:43:30 · 2283 阅读 · 0 评论 -
单链表:编写代码,以给定值x为基准将链表分割成两部分,所有小于x的结点排在大于或等于x的结点之前
public Node partition(int x){ //bs、be分别为小于x节点左侧的首和尾、 //as、ae分别为大于x节点右侧的首和尾 Node bs = null; Node be = null; Node as = null; Node ae = null; Node cur = this.head; while (cur != null){ if (cur.data < x){原创 2020-08-17 16:09:31 · 2545 阅读 · 0 评论