字符串数组逆序


 1 import java.util.Arrays;
2 import java.util.Comparator;
3
4 class ResStrSort{
5 public static void main(String[] args) {
6 String strs[] = {"dog","cat","horse","cow"};
7 System.out.println("Initial order: ");
8 for(String s:strs) {
9 System.out.print(s + " ");
10 }
11 System.out.println();
12
13 ResStrComp rsc = new ResStrComp();
14 //将数组 与 比较器传递给Arrays.sort();
15 Arrays.sort(strs, rsc);
16 System.out.println("Sorted in reverse order: ");
17 for(String s:strs){
18 System.out.print(s + " ");
19 }
20 System.out.println();
21
22 Arrays.sort(strs);
23 System.out.println("Sirted in natural order: ");
24 for(String s:strs){
25 System.out.print(s + " ");
26 }
27 System.out.println();
28 }
29 }
30 /**
31 * Comparator是泛型接口
32 */
33 class ResStrComp implements Comparator<String>{
34
35 @Override
36 public int compare(String o1, String o2) {
37 return o2.compareTo(o1);//关键所在
38 }
39
40 }

字符串数组逆序

时间: 2024-10-22 00:35:27

字符串数组逆序的相关文章

字符串的逆序

普通排序: 直接分配一个同等大小的数组,反向copy即可. char* Reverse(char* s){    //将q指向字符串最后一个字符    char* q = s ;    while( *q++ ) ;    q -= 2 ;     //分配空间,存储逆序后的字符串.    char* p = newchar[sizeof(char) * (q - s + 2)] ;     char* r = p ;    // 逆序存储    while(q >= s)        *p+

用递归实现字符串的逆序输出

/*输入一个字符串实现逆序输出*/ #include <stdio.h> #include <stdlib.h> void print() { char c; scanf("%c",&c); if(c != '#') print(); if(c != '#') printf("%c",c); } int main() { printf("请输入字符串,以#结束:\n"); print(); return 0; }

Java数组逆序存储

package review01; import java.util.Arrays; public class review01 { public static void main(String[] args) { method(); } private static void method() { // 数组逆序存储 int[] arr = { 2, 0, 1, 6, 1, 2, 0, 7, 2, 0, 1, 2, 3, 3 }; for (int s = 0, e = arr.length

字符串内子字符串的逆序算法

源于一道ACM的题目,要求将字符串中的子字符串逆序输出,最初的想法就是利用strtok按照空格进行分割字符,再实现以下单个字符串的逆序,再通过strcat进行字符串的拼接,感觉这个想法不错,利用库函数搞搞,但是不知道哪里出错,strcat出来的字符串输出的时候会出现多个换行,非常难受,感觉一个简单的问题,代码太多,所以睡觉的时候就在想,我应该考虑自己写一个算法来实现这个需求,刚好最近在看算法方面的书,那就尝试下吧. 基本思想,从前往后扫描字符串,遇到空格停止,字符串第一个字符start位置,扫描

数组逆序=全局内存版 VS 共享内存版

全局内存版 1 #include <stdio.h> 2 #include <assert.h> 3 #include "cuda.h" 4 #include "cuda_runtime.h" 5 #include "device_launch_parameters.h" 6 //检查CUDA运行时是否有错误 7 void checkCUDAError(const char* msg); 8 // Part3: 在全局内存

lua学习笔记15:table数组逆序

数组的逆序,只能用于数组,不能用于哈希表 function reverseTable(tab) local tmp = {} for i = 1, #tab do local key = #tab tmp[i] = table.remove(tab) end return tmp end // 示例 local t = {"one", "two", "three"} for k, v in pairs(t) do print(k, v) end

C数组逆序

一.标准交换模式 /**** *标准交换模式 *实现数组的逆序,原理就是数组的首尾元素进行交换 ***/ #define N 5; int main(){ int array[N] = {15,20,25,30,35} int temp; //声明临时变量 int i; for(i = 0;i<N/2;i++){ //第i个值和第N-i-1个值相交换 temp = array[i]; array[i] = array[N - i - 1]; array[N - i - 1] = temp; }

1-6-04:数组逆序重放

描述 将一个数组中的值按逆序重新存放.例如,原来的顺序为8,6,5,4,1.要求改为1,4,5,6,8. 输入 输入为两行:第一行数组中元素的个数n(1<n<100),第二行是n个整数,每两个整数之间用空格分隔. 输出 输出为一行:输出逆序后数组的整数,每两个整数之间用空格分隔. 样例输入 5 8 6 5 4 1 样例输出 1 4 5 6 8 1 #include<stdio.h> 2 int main() 3 { 4 int a[101]={0}; 5 int n; 6 scan

04:数组逆序重放

总时间限制:  1000ms 内存限制:  65536kB 描述 将一个数组中的值按逆序重新存放.例如,原来的顺序为8,6,5,4,1.要求改为1,4,5,6,8. 输入 输入为两行:第一行数组中元素的个数n(1<n<100),第二行是n个整数,每两个整数之间用空格分隔. 输出 输出为一行:输出逆序后数组的整数,每两个整数之间用空格分隔. 样例输入 5 8 6 5 4 1 样例输出 1 4 5 6 8