摘要:
Given two strings s1 and s2, write a function to return true if s2 contains the permutation of s1. In other words, one of the first string's permutati 阅读全文
摘要:
Given a string s and an integer k. Return the maximum number of vowel letters in any substring of s with length k. Vowel letters in English are (a, e, 阅读全文
摘要:
选择排序是一种简单直白的排序算法,它的思想是:每次从无序区中选择出最小(或最大)的元素,然后把它和无序区首部的元素交换,此时有序区长度+1,无序区长度-1。 实现思路: ①在排序开始前,整个数组都是无序的,所以此时有序区的长度为0 > 找出整个数组中最小(或最大)的元素,将它与无序区首部的元素,即a 阅读全文
摘要:
快速排序算法是基于冒泡排序的,是对冒泡排序算法的一个改进。快速排序的效率比较高,是因为它的交换是跳跃式的。每次设置一个基准值,在比较的时候,将小于基准值的元素移到左边,将大于基准值的元素移到右边,这边一般不会只交换相邻的两个数。因此比较和交换的次数都会减少了,排序的效率自然也就高了。 快速排序的思想 阅读全文
摘要:
Given a non-empty 2D array grid of 0's and 1's, an island is a group of 1's (representing land) connected 4-directionally (horizontal or vertical.) Yo 阅读全文
摘要:
给出一个字符串str,要求按照字符出现的频率,降序打印出来,比如如下结果: 输入:ahinfhhaaahgiajrbgjbsgbaa 输出:aaaaaaahhhhbbbgggiijjrsfn 在统计字符串出现的频率时,我们很容易便想到利用Map:Map中的key可以用来存放出现的字符,value可以 阅读全文
摘要:
编程实现大数的加法。 比如说,给出两个数a,b,它们各自的位数都大于1000(用String来表示)。这时候,我们发现,用任何一种数据类型都不足以表示这两个数,更别说表示这两个数之和了。因此,我们可以用换一种方式,通过两个数组来分别表示这两个数,然后把两个数组对应位置的元素各自相加,则可求得两个数之 阅读全文
摘要:
类加载的时机 一个类的生命周期包括:加载、验证、准备、解析、初始化、使用、卸载这七个部分。其中的验证、准备、解析这三个部分又可以称为连接。其中加载、验证、准备、初始化和卸载这5个步骤是按部就班去完成的,而解析这个阶段,则不一定:它可以在某些情况下在初始化之后再进行解析,这是为了支持Java语言的动态 阅读全文
摘要:
题目描述 有一个m * m 的棋盘,棋盘上每一个格子可能是红色、黄色或者没有任何颜色的。你现在需要从棋盘的最左上角走到棋盘的最右下角。任何一个时刻,你所站在的位置必须是有颜色的(不能是无色的),你只能向上、下、左、右四个方向前进。当你从一个格子走向另一个格子时,如果两个格子的颜色相同,那你不需要花费 阅读全文