面试(算法题)

1.一个字符串,由n个单词组成,每个单词仅由字母组成,每个单词可能有大写和小写,并且单词之间以一个或者空格分割。
现在将字符串中单词间多余的空格删除,即保留一个空格,字符串首尾的空格也删除,并将所有的单词的首字母改成大写,其它字符统一为小写,然后输出到屏幕。

public class TranferString {
    public static void transfer(String s) {
        //以空格为分隔符,将数组中的单词放入列表
        List<String> ss=new ArrayList(Arrays.asList(s.split(" ")));
        ArrayList rs = new ArrayList<String>();
        //迭代
        Iterator<String> it = ss.iterator();
        while(it.hasNext()) {
            String item=it.next();
            if(item.equals("")) {
                it.remove();
                continue;
            }
            //把单词第一个字母大写,其他字母小写
            item = item.toUpperCase().charAt(0)+item.substring(1).toLowerCase();
            rs.add(item);
        }
          //拼接单词
        System.out.println(String.join(" ", rs));
            
    }
    public static void main(String[] args) {
        final String sss="i am   Your BEST     FRiend";
        transfer(sss);
        
    }
}

2.寻找NGE

public class SearchNGE {
    public static void search(int[] arr,int len) {
        Stack<Integer> stack = new Stack<Integer>();
        stack.push(arr[0]);
        int top,next;
        for(int i=1;i<len;i++) {
            next=arr[i];
            top=stack.peek();
            while((!stack.isEmpty())&&top<next) {
                System.out.println(top+","+next);
                stack.pop();
                if(!stack.isEmpty()) {
                    top=stack.peek();
                }
            }
            stack.push(next);
        }
        while(!stack.isEmpty()) {
            top=stack.peek();
            stack.pop();
            System.out.println(top+"-1");
        }
        
    }
public static void main(String[] args) {
    int arr[]= {11,13,28,4,76,0,7};
    int len=arr.length;
    search(arr, len);
}
}
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 目录 1. 栈和队列1.用两个队列实现栈2.用两个栈实现队列3.实现一个栈,可以用常数级时间找出栈中的最小值4.判...
    MigrationUK阅读 3,055评论 4 20
  • 前言 最先接触编程的知识是在大学里面,大学里面学了一些基础的知识,c语言,java语言,单片机的汇编语言等;大学毕...
    oceanfive阅读 3,125评论 0 7
  • 通草画,19世纪上半叶来中国旅行的欧洲人通常会收集当地艺术家绘制的小型,有吸引力的水彩画。这些绘画通常很小,描绘的...
    Qing_f8d1阅读 1,083评论 0 0
  • 八月天 雷震雨 瓢泼下的树干 枝繁叶茂的墨绿 心里 心波荡漾 点点滴滴 一路一路树荫 好不爽快 傍晚 电线上 鸟儿...
    石川河女神阅读 348评论 0 4
  • 在信息碎片化的今天,系统的人文教育愈发难得。人文,关乎人类基本情感,有时甚至不分种族,无关国籍。自人类文明伊始,它...
    英国范阅读 722评论 0 2