Java筆試之幾種字串逆序的方法
package test; import java.util.Stack; public class DoString { public static void main(String[] args) { String string = "123abcd"; // StringBuffer sb = new StringBuffer(string); string = reverse3(string); // System.out.println(sb.reverse().toString()); System.out.println(string); } public static String reverse3(String string) { StringBuffer sb = new StringBuffer(); Stack<Character> s = new Stack<Character>(); for (int i = 0; i < string.length(); i++) { s.add(string.charAt(i)); } for (int i = 0; i < string.length(); i++) { sb.append(s.pop()); } return sb.toString(); } public static String reverse1(String string) { StringBuffer sb = new StringBuffer(string); for (int i = 0, j = sb.length() - 1; i < sb.length() >>> 1; i++, j--) { char temp = sb.charAt(i); sb.setCharAt(i, sb.charAt(j)); sb.setCharAt(j, temp); } return sb.toString(); } public static String reverse2(String string) { StringBuffer sb = new StringBuffer(); for (int i = string.length() - 1; i >= 0; i--) { sb.append(string.charAt(i)); } return sb.toString(); } }
相關推薦
Java筆試之幾種字串逆序的方法
package test; import java.util.Stack; public class DoString { public static void main(String[] a
java基礎之幾種常見的排序算法
java基礎 csdn n) min center 最小 fill 順序 system 一,冒泡排序 1、原理: 從數組的第一個位置開始兩兩比較array[index]和array[index+1],如果array[index]大於array[index+1]則交換a
Java——用兩種方法實現字串逆序
package com.zth; public class Test{ public static String fun1(String str){ //方法一 將字串轉換為字元陣列 char[] arr = str.toCharA
Java之幾種定時器的使用
沒有去仔細研究這兩種定時器的API,會使用及能在專案中應用即可; import org.quartz.CronExpression; import org.quartz.CronTrigger; import org.quartz.JobDetail; import org.quartz.S
Java字串逆序輸出
public class re { //這個方法只是看效果,無返回 public void reverse(String s){ char[] arr=s.toCharArray();//字串轉為字元陣列 for
java中的幾種對象(PO,VO,DAO,BO,POJO)
objects 其中 標準 setter ant object get 組件 工廠類 一、PO :(persistant object ),持久對象 可以看成是與數據庫中的表相映射的java對象。使用Hibernate來生成PO是不錯的選擇。二、VO :(value ob
java常見的幾種設計模式
設計模式 單例 餓漢式 懶漢式 設計模式 1、概述 1)設計模式(Design pattern):是一套被反復使用、多數人知曉的、經過分類編目的、代碼設計經驗的總結; 2)分類: 創建型模式(創建對象的): 單例模式、抽象工廠模式、建造者模式、工廠模式、原型模式。 行為型模式(對象
Java常見的幾種內存溢出及解決方案
-xmx 系列 lba pan fff 特征 聚類算法 聲明 space 1.JVM Heap(堆)溢出:java.lang.OutOfMemoryError: Java heap space JVM在啟動的時候會自動設置JVM Heap的值, 可以利用JVM提
JavaScript之幾種創建函數的區別以及優缺點。
friend type屬性 一個 多個 引用 定義 ret 安全 cto 工廠模式 function createPerson(name,age,job){ var o = new Object(); o.name = name; o.age = a
Java常用的幾種線程池
fin cep read out fixed 重新 stat 支持 con 常用的幾種線程池 5.1 newCachedThreadPool 創建一個可緩存線程池,如果線程池長度超過處理需要,可靈活回收空閑線程,若無可回收,則新建線程。 這種類型的線程池特點是: 工作線程
幾種求逆元的方法
int 才有 gpo log swa class ++ 要求 1-n 一, 擴展歐幾裏得 1 void exgcd(int a,int b,int &x,int &y) 2 { 3 if(b==0) 4 { 5 x
JVM之幾種垃圾收集器簡單介紹
new root 哪些 組合 sca jpg 跨年 tails ive 本文中的垃圾收集器研究背景為:HotSpot+JDK1.7 一、垃圾收集器概述 如上圖所示,垃圾回收算法一共有7個,3個屬於年輕代、三個屬於年老代,G1屬於橫跨年輕代和年老代的算法。 JVM會
Java 中的幾種線程池這麽用才是對的
start java開發手冊 nds 細節 div 進入 args rdo 等待 為什麽要使用線程池 雖然大家應該都已經很清楚了,但還是說一下。其實歸根結底最主要的一個原因就是為了提高性能。 線程池和數據庫連接池是同樣的道理,數據庫連接池是為了減少連接建立和釋放帶來的性能開
Java Map的幾種遍歷方法
Map key重複則會出現最後一次put的value //HashMap TreeMap 遍歷Map Map<Object, Object> map = new HashMap<Object, Object>(); 1.老版本遍歷,泛型1.5以上 ,
LeetCode周賽#105 Q1 Reverse Only Letters(字串逆序)
題目來源:https://leetcode.com/contest/weekly-contest-105/problems/reverse-only-letters/ 問題描述 917. Reverse Only Letters Given a string S, return
寫一個遞迴演算法來實現字串逆序儲存,要求不另設串儲存空間。
遞迴演算法中需要使用一個靜態變數儲存陣列下標 #include <iostream> using namespace std; void invert(char A[]) { char ch; static int i=0;//利用靜態變數儲存陣列下標 ci
format函式之幾種常規用法
format函式是一種格式化輸出字串的函式(str.format),基本語法是通過{}和:來代替以前的%。 1.可以接受不限個引數,位置可以不按順序 >>>"{} {}".format("hello", "world") # 不設定指定位置,按預設順序 'hello worl
java類的幾種關係詳解(有程式碼、有類圖)
前言 知道類的幾種關係也是程式設計的基礎知識,通常我們在軟體設計、架構設計、開發中都需要使用的, 類的關係 一般情況下類的關係分為6種,分別是實現、繼承、依賴、關聯、聚合、組合,下面將這6中關係簡單的分類 (1)is a -->繼承、實現 (2)has a-->關聯、
字串逆序問題
最近在學習資料結構中的串,然後就隨手記錄一下面試題中經常會問到,但是很基礎的一些問題,也算是自己的一個筆記吧,主體思想就是交換字串頭部和尾部,不停的輪流交換,直到滿足逆序條件,程式碼很簡單啦,一看就可以看懂啦。 #include <stdio.h> #incl
7-6 字串逆序 (15 分)
輸入一個字串,對該字串進行逆序,輸出逆序後的字串。 輸入格式: 輸入在一行中給出一個不超過80個字元長度的、以回車結束的非空字串。 輸出格式: 在一行中輸出逆序後的字串。 輸入樣例: Hello World! 輸出樣例: !dlroW olleH #include