java
文章平均质量分 76
乐行僧丶
这个作者很懒,什么都没留下…
展开
-
单链表逆置(递归和迭代)
迭代class Solution { public ListNode reverseList(ListNode head) { if (head == null) return head; ListNode a=head, b=head.next; head.next = null; while (b != null) { ListNode c = b.next; b.next = a; a = b; b = c;原创 2020-11-16 01:31:40 · 358 阅读 · 0 评论 -
Java实现替换字符串中空格为两个#
方法一public static void addChar(String s) { char[] a = s.toCharArray(); int wordStart = 0; for (int i=0; i<a.length; ++i) { int j = i; if (a[j] == ' ') { int wordEnd = j; String x = s.substring(0, wordEnd);原创 2020-09-20 23:10:36 · 325 阅读 · 0 评论 -
Java实现字符串单词反转
一.方法一思想:1.首先将字符串转换成字符数组,方便索引字符。2.反转整个字符数组3.反转每个单词,单词是如何划分的:维护一个单词的起始索引和结束索引i,j,分别表示一个单词的起始下标和结尾下标,对这个区间的字符数组进行反转。 public static void reverse(char[]arr,int i ,int j) { //每个单词首位交换 while (i < j){ swap(arr, i ++, j --); } } public原创 2020-09-20 23:07:44 · 3656 阅读 · 1 评论 -
java中Iterable接口的使用,实现一个单链表的迭代器
单链表实现:public class MyLinkedList &lt;T&gt;{ private static class Entry&lt;E&gt;{ private E value; private Entry next; Entry(E e){this.value = e;this.next = null;} ...原创 2018-11-11 12:31:46 · 965 阅读 · 0 评论 -
冒泡排序、简单选择排序和插入排序(java实现)
public class Sort{ public stativ &amp;lt;T&amp;gt; void swao(T[] arr,int i,int j){ T tmp = arr[i]; arr[i]] = arr[j]; arr[j] = tmp; } //冒泡排序及其优化 public static &amp;lt;T extends Compapable&amp;lt;T&原创 2018-10-17 07:48:16 · 270 阅读 · 0 评论 -
约瑟夫环模型问题的题解(java)
1~10十个人进行编号,开始报数,报到3的人淘汰,剩余的人是编号为几的人?解题思路:设置一个长度为11的数组,其中索引为0的位置不进行编号,这索引和索引对应元素的值是意义对应的,即index==arr[index],被淘汰的人其元素值置为-1,用来标记其被淘汰。定义一个计数器count1来计数已经被淘汰的人,每当一个被淘汰时,计数器就加1。当计数器的值为9时,即10个人只剩一人,此时退出程序。此...原创 2018-09-20 09:00:53 · 470 阅读 · 0 评论 -
java反射
获取class对象的三种方法(1)调用Object类的getClass()方法,由于在java中所有的类都默认的继承了Object类,所以在派生类中都有getClass()方法。class People{}public class Test{ public stativ void main(String[] args){ People p = new People(); Class...原创 2018-09-19 11:44:54 · 242 阅读 · 0 评论 -
java字符串切割小记
split方法(1)以一个字符串中的空格为界限切割为单词。class Test{ public static void testSplit(){ //切割后的字符串保存在String数组中 String str = "China American English Korea"; String[] arr = str.split("\\s"); for(String i...原创 2018-09-19 10:26:24 · 284 阅读 · 0 评论 -
java素数筛选法
判断是否为素数 对于一个任意一个正整数,如果它只能被自身或1整除,称其为素数,否则为合数。1比较特殊,既不是质数也不是合数。基于素数的定义,很快就可以直观的想到代码,对于任意一个正整数,只需要在(1,n)也就是[2,n-1]之间进行遍历,如果n可以被区间中的任何一个数字整除,它就不是质数。否则,如果对整个区间遍历完毕,还未找到一个数字可以整除n,那么这个数字就是质数。public Tes...原创 2018-09-13 17:30:04 · 3494 阅读 · 0 评论 -
java中的异常
Java中的异常异常:直观的理解就是不正常,不完全正确,可能存在某些问题。在实际编写程序的过程中,往往可能出于疏忽而导致程序出现bug。典型的有数组越界,除0等,在c语言中由于考虑到程序实际的效率而未考虑数组下标越界引起的程序错误,如果在编写程序涉及到数组的边界问题而未考虑,几乎100%会发生如下的bug。在java中,提供了优秀的异常机制,当程序出现在运行时期的异常和编译阶段的异常,提供解...原创 2018-09-17 20:13:38 · 453 阅读 · 0 评论 -
java基本数据类型转换为字符串
由于基本数据类型不能直接强制转换为引用数据类型,一种实际中存在的需求是。当我们需要将基本数据类型的值转换成为对应的字符串应该怎么做?因此,java提供了包装类将基本数据类型封装成类。通过调用类的toString()方法可以将基本数据类型的值转换成对应的字符串。包装类 Byte(byte),Short(short),Integer(int),Long(long) Float(float)...原创 2018-09-10 16:21:10 · 4888 阅读 · 0 评论 -
java生成随机数的两种方法
1.使用Math类中的Math.random()方法生成(0.1)区间的数字,因此当需要生成更大范围内的数字,需要在返回值的基础上扩大倍数以回去更大的随机值。import java.util.Randompublic class Main{ public static void main(String[] args){ for(int i=0;i<5;++i...原创 2018-09-06 09:07:43 · 7970 阅读 · 2 评论 -
java指令集
转自:https://www.cnblogs.com/JsonShare/p/8798735.html 1.栈和局部变量操作 ,将常量压入栈的指令 aconst_null 将null对象引用压入栈 iconst_m1 将int类型常量-1压入栈 iconst_0 将int类型常量0压入栈 iconst_1 将int类型常量1压入栈 iconst_2 将int类型...原创 2018-09-06 00:26:44 · 1298 阅读 · 2 评论 -
java中Compareable接口思考
在C++中,如果需要比较两个类对象。就不能直接通过>,<进行比较,引用对象不是基本数据类型。C++提供了运算符的重载函数得以解决这个问题。但是在java中没有运算符重载这一说,因此如果需要比较两个对象可能需要通过对象访问实例方法获取相应的值再做比较。无论从代码的的形式上还是方便理解的层面上都是不良好的。幸运的是在java中提供了一些接口,通过类实现这些接口就可以通过这些实例方法在对象之...原创 2018-09-11 23:48:34 · 2041 阅读 · 0 评论 -
java类的初始化顺序
了解类的初始化顺序对于编写正确的Java代码是非常重要的,尤其java是完全面向对象的语言,类作为整个程序编写的单位。 构造方法 静态实例变量 实例变量 静态块 实例块测试代码: 所有类在同一包下:class Test1{ public Test1(){ System.out.println("父类普通实例变量"); }}class Te...原创 2018-09-08 22:14:54 · 199 阅读 · 0 评论