【Java】编写程序,确定一个字符串s的字符重新排列后能否变成另一个字符串t

原创 2015年07月07日 13:26:03

【Java】编写程序,确定一个字符串s的字符重新排列后能否变成另一个字符串t

在编写之前,应先核实字符集的大小,是否区分大小写,空白字符是否需要考虑

首先考虑两个字符串长度是否相等,如果不相等那么肯定不能通过重新排列变成另一个字符串

其次,如果两个字符串经过重新排序能变成对方,说明

1. 每个字符的个数是相同的

2. 排序后的两个字符串应该是相同的

import java.util.Arrays;
import java.lang.*;

public class Permutation {
	public method_1	
	{
		public String sort(String s)
		{
			char[] content = s.toCharArray();
			java.util.Arrays.sort(content);
		}
		
		public boolean isPermu1(String s, String t)
		{
			if(s.length() != t.length())
				{ return false; }
			return sort(s).equals(sort(t));
		}
	}
	
	
	
	public boolean isPermu2(String s, String t)
	{
		if(s.length() != t.length())
		{ return false; }
		
		int[] letters = new int[256]; //let's say it's ACSII
		for (int c : letters)
		{
			letters[c] = 0;
		}
		char[] s_array = s.toCharArray();
		for(char ch : s_array)
		{
			letters[ch]++;
		}
		
		for(int i = 0; i < t.length(); i++)
		{
			int c = (int)t.charAt(i);
			if(--letters[c] <= 0)
			{return false;}
		}
		return true;
	}
}


【Java】java中类的大小

http://blog.csdn.net/aaa1117a8w5s6d/article/details/8254922 在Java中,一个空Object对象的大小是8byte,这个大小只是保存堆...

【Java】编写一个方法,实现基本的字符串压缩功能

利用重复字符出现的次数,编写一个方法,实现基本的字符串压缩功能。 例如,字符串aabcccccaaa会变为a2b1c5a3。若压缩后的字符串没有变短,则返回原先的字符串。 StringBuffer...

给定两个字符串,请编写程序,确定其中一个字符串的字符重新排列后,能否变成另一个字符串。这里规定大小写为不同字符,且考虑字符串重点空格。 给定一个string stringA和一个string stri

**给定两个字符串,请编写程序,确定其中一个字符串的字符重新排列后,能否变成另一个字符串。这里规定大小写为不同字符,且考虑字符串重点空格。 给定一个string stringA和一个string s...

面试3之确定其中一个字符串的字符重新排列后,能否变成另一个字符串

题目描述 给定两个字符串,请编写程序,确定其中一个字符串的字符重新排列后,能否变成另一个字符串。这里规定大小写为不同字符,且考虑字符串重点空格。 给定一个string stringA和一个stri...

【笔试】58、确定其中一个字符串的字符重新排列后,能否变成另外一个字符串

/**************************************************************************************** *题目:给定两个字...

在扑克牌游戏中,每次游戏开始都要求把54张牌重新排列一下,称为洗牌。试编写程序将一副扑克牌(用54个整数1~54表示)随机洗好后,顺序输出54张牌的情况。

问题及代码: /* *Copyright (c) 2016,烟台大学计算机学院 *All rights reserved. *文件名称:main.cpp *作 者:李磊涛 *完成时间:2016...

编写程序,将指定目录下所有.java 文件拷贝到另一个目的中,并将扩展名改为.txt。

package com.heima.test;import java.io.BufferedInputStream; import java.io.BufferedOutputStream; impo...

顺序栈S中有2n个元素,从栈顶到栈底的元素依次为a2n、a2n-1、…、a1。试设计一个算法:通过一个循环队列重新排列该栈中的元素,使得从栈顶到栈底的元素先偶数,后奇数

#include #include #define STACK_INIT_SIZE 100 #define QUEUE_MAX_SIZE 100 #define STACK_INCREMENT 10...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:【Java】编写程序,确定一个字符串s的字符重新排列后能否变成另一个字符串t
举报原因:
原因补充:

(最多只允许输入30个字)