一,给定一个非空的字符串,判断它是否可以由它的一个子串重复多次构成。给定的字符串只含有小写英文字母,并且长度不超过10000。输入: "abab"输出: True解释: 可由子字符串 "ab" 重复两次构成。输入: "aba"输出: False输入: "abcabcabcabc"输出: True解释: 可由子字符串 "abc" 重复四次构成。 (或者子字符串 "abcabc" 重复两次构成。)二、代码和思路1.这里 if n%i==0这句判断函数的作用是判断i是否的n的约数,如果是就将s分为n/i个...
面试50题:题目:第一个只出现一次的字符题:在一个字符串(1<=字符串长度<=10000,全部由字母组成)中找到第一个只出现一次的字符,并返回它的位置。解题思路一:利用Python特性# -*- coding:utf-8 -*-class Solution:def FirstNotRepeatingChar(self, s):# write code hereifnot s or len(s)<=0:return -1for i in s:if s.count(i)==1:return s.index(i)return -1解题思路二:自定义一个哈希表,键值key为字符,值value为该字符出现...
垃圾回收之垃圾标记算法
对象被判定为垃圾的标准:该对象没有被其他对象引用判定对象是否为垃圾的算法:引用计数算法,优点:执行效率高,程序执行受影响较小;缺点:无法检测出循环引用的情况,容易导致内存泄露
通过判断对象的引用数量来决定对象是否可以被回收每个对象实例都有一个引用计数器,被引用则+1,完成引用即引用结束则-1综上,任何引用计数为0的对象实例就可以被当作垃圾收集可达性分析算法(Java使用的算法)
通过判...
2、String是最基本的数据类型吗?基本数据类型包括byte、int、char、long、float、double、boolean和short。java.lang.String类是final类型的,因此不可以继承这个类、不能修改这个类。为了提高效率节省空间,我们应该用StringBuffer类3、int 和 Integer 有什么区别Java 提供两种不同的类型:引用类型和原始类型(或内置类型)。Int是java的原始数据类型,Integer是java为int提供的封装类。Java为每个原始类型提供了封装类。原始类型...
批量生产随机字符文件名要求:使用for循环在/oldboy目录下批量创建10个html。其中每个文件需要包含10个随机小写字母加固定字符串oldboy。#!/bin/bash
[ ! -d /oldboy ] && mkdir /oldboy
cd /oldboy
for ((i=0;i<10;i++))
do
aa="`echo $RANDOM | md5sum | cut -c 1-11`"
touch "$aa"_oldboy.html
done
~2.批量改名 将上面的oldboy全部改成oldgirl(最好用for实现),并将扩展名修改成大写#!/bin/bash
cd /oldboy
for i i...
请实现一个函数,把字符串 s 中的每个空格替换成"%20"。 示例 1:输入:s = "We are happy."输出:"We%20are%20happy." 限制:0 <= s 的长度 <= 10000来源:力扣(LeetCode)链接:https://leetcode-cn.com/problems/ti-huan-kong-ge-lcof著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。 // 新建空的字符串 逐个遍历原字符串class Solution {
public:string replaceSpace(string s) {string res;for(auto i...
/*** 通过方法传参 如何交换两个数的值** @author zhuliang* @date 2019/7/14 10:39*/publicclass SwapValueDemo {publicstaticvoid main(String[] args) throws Exception {Integer a = 1;Integer b = 2;System.out.println("交换前 a = " + a + ",b = " + b);swap(a, b);System.out.println("交换后 a = " + a + ",b = " + b);}/*** 交换两个数 错误示范** @param a* @param b*/privatestaticvoid falseSwap(Integer a, Inte...
原文链接:http://blog.51cto.com/4925054/20884101、常用设计模式单例模式:懒汉式、饿汉式、双重校验锁、静态加载,内部类加载、枚举类加载。保证一个类仅有一个实例,并提供一个访问它的全局访问点。代理模式:动态代理和静态代理,什么时候使用动态代理。适配器模式:将一个类的接口转换成客户希望的另外一个接口。适配器模式使得原本由于接口不兼容而不能一起工作的那些类可以一起工作。装饰者模式:动态给类加功能。观察者模...
题目:给定一个字符串,输出其所有子字符串,例如给定字符串abc,则输出 :a,b,c,d,ab,bc,cd,abc,bcd,abcd。分析:今天看到csdn博客上面的一题,说是阿里巴巴电面的题目。初看到这道题的时候,就感觉很熟悉,在高中的时候,经常要算这种组合有多少个,当时我们计算的方法顺序是这样的:3+2+1 即a,b,c,d,ab,bc,cd,abc,bcd,abcd。假如我们按照这种思路去写程序的话,你会发现很难写,因为当我们输出两个字符的子...
文章转至:https://www.jianshu.com/p/63ad69c480fe 1、什么是Spring Boot? Spring Boot是Spring开源组织下的子项目,是Spring组件一站式解决方案,主要是简化了使用Spring的 难度,简省了繁重的配置,提供了各种启动器,开发者能快速上手。 2、为什么要用 Spring Boot? Spring Boot优点非常多,如:独立运行简化配置自动配置无代码生成和XML配置应用监控上手容易... Spring Boot集多种优点于一身。 3、...
(摘抄自https://blog.csdn.net/wz1226864411/article/details/77934941)虚拟内存空间: 虚拟内存空间是操作系统实现内存管理的一种机制。操作系统为每个进程维护一个虚拟内存空间。操作系统会将虚拟内存和实际的物理内存进行映射,利用存放在主存中的查询表来动态翻译虚拟地址,该表的内容是由操作系统管理。虚拟内存使得用户感觉内存空间时连续的,同时给进程提供独占内存的假象。 下图中,我们可以看到虚拟内存空间的顶部...
对于wait和sleep貌似都会阻塞线程,但是它们确实是很大的区别的,所以下面一点点来探讨:区别一、Sleep()是线程里面的方法,而Wait()是Object类的方法。这个比较简单,直接看代码便知:区别二、sleep()方法不需要被notify唤醒,而wait()则需要【当然wait(10)这样的情况除外】。这个比较容易理解,就不多解释了。sleep()使用是不需要使用syncronized加上同步锁,但是wait()需要。这个做一下实验就明白了:嗯~~调用sleep()时是不需要...
1. XML的解析方式都有哪些? 每一种解析方式的执行流程?设XML为:<a>a<b>bc<c>c1</c></b></a> Dom SAX Pull 2.<a>a<b>bc<c>c1</c></b></a> 以树的方式展现应该是什么样子的 根节点 在上面 子节点和文本在下面 3. 设现有3个Activity,A1, A2, A3,如何实现 A1 启动 A2, A2启动A3后,由A3进行返回操作,直接可以返回到 A1? 举出两种方式?Inflate 1 A1 – 》 A2-》 A3 A2 finish() 2 A2
不进回退站?(如何...
题目请设计一个函数,用来判断在一个矩阵中是否存在一条包含某字符串所有字符的路径。路径可以从矩阵中的任意一格开始,每一步可以在矩阵中向左、右、上、下移动一格。如果一条路径经过了矩阵的某一格,那么该路径不能再次进入该格子。例如,在下面的3×4的矩阵中包含一条字符串“bfce”的路径(路径中的字母用加粗标出)。[["a","b","c","e"],
["s","f","c","s"],
["a","d","e","e"]]但矩阵中不包含字符串“abfb”的路径,因为字符...
很多面试题是我自己面试BAT亲身经历碰到的。整理分享出来希望更多的前端er共同进步吧,不仅适用于求职者,对于巩固复习前端基础更是大有裨益。 而更多的题目是我一路以来收集的,也有往年的,答案不确保一定正确,如有错误或有更好的解法,还请斧正。 前面几题是会很基础,越下越有深度。 附上第一篇:BAT及各大互联网公司2014前端笔试面试题--JavaScript篇 Html篇: 1.你做的页面在哪些流览器测试过?这些浏览器的...