Day1青训营练习题

201 阅读3分钟

代码题1

题目

给定一个十进制整数字符串,判断它是否是 4 的幂。

示例 1

输入:"16",输出:true

示例 2

输入:"101",输出:false

示例 3

输入:"70368744177664",输出:true

限定语言: C、 C++、Java、Python、JavaScript V8

var isPowerOfFour = function(n){
    return n>0 && (n==1||(n%4==0 && isPowerOfFour(n/4)))
}
n如果是4的幂,说明根号n一定是2的幂。判断2的幂可以通过
`(n&(n-1))==0``(n&(-n))==n`两种方式判断
function isPowerOfFour(n){
    if(n<=0) {return false}
    let sqrtn=Math.floor(Math.sqrt(n))
    return sqrtn*sqrtn==n && sqrt&(sqrt-1)==0
}


function isPowerOfFour(n){
    if(n<=0) {return false}
    let sqrtn=Math.floor(Math.sqrt(n))
    return sqrtn*sqrtn==n && (sqrtn&(-sqrtn)==sqrtn)
}

blog.csdn.net/weixin_4766…

代码题2

题目

给定一个字符串,验证它是否是回文串,只考虑字母和数字字符,可以忽略空格、字母的大小写。

示例

输入:"A man, a plan, a canal: Panama",输出:true

限定语言: C、 C++、Java、Python、JavaScript V8

function isPalindrome(str){
    let newStr=str.replace(/[^0-9a-zA-Z]/g).toLowerCase()
    let i=0,j=newStr.length-1
    if(newStr.length<2){return true}
    while(i<j){
        if(newStr[i]!==newStr[j]){return false}
        i++
        j--
    }
    return true
}

代码题3

题目

给定一个字符串,找出该字符串中最长回文子串的长度。

示例 1

输入:"abc",输出:0

示例 2

输入:"abcbe",输出:3

示例 3

输入:"acdcecdcf",输出:7

限定语言: C、 C++、Java、Python、JavaScript V8

function longestPalindrome(str){
    if(str==null||str.length<1) return ""
    let start=0,end=0
    for(let i=0;i<str.length;i++){
        //查询以i为中心和以(i+1+1)/2为中心的长度
        let len1=expandAroundCenter(str,i,i)
        let len2=expandAroundCenter(str,i,i+1)
        let len=Math.max(len1,len2)
        //如果此位置为中心的回文数长度大于之前的长度,则进行处理
        if(len>end-start){
            start=i-Math.floor((len-1)/2)
            end=i+Math.floor(len/2)
        }
    }
    return str.substring(start,end+1)
}

//从中心查询回文串并返回长度
function expandAroundCenter(s,left,right){
    while(left>=0 && right<s.length && s[left]==s[right]){
        left++
        right--
    }
    return right-left-1
}

blog.csdn.net/zf201412289…

选择题 1:ABCD
下列哪些是 HTML5 的新特性?
A. 语义标签
B. Canvas 绘图
C. audio元素
D. 增强型表单

选择题 2:ACD

下面可以继承的属性有哪些?
A. font-size
B. background
C. color
D. cursor

html5新特性

www.cnblogs.com/RikkaXl/p/1…

html5新特性—— ①canvas元素 ②表单元素 ③媒体元素 ④地理定位 ⑤html5拖放 ⑥web存储 ⑦应用程序缓存(Application Cache) ⑧html5 Web Workers ⑨html5服务器发送事件 ⑩html5 WebSocket

有继承性的属性:

> https://www.cnblogs.com/ccgxb/p/15619581.html 

1、字体系列属性

  • font:组合字体
  • font-family:规定元素的字体系列
  • font-weight:设置字体的粗细
  • font-size:设置字体的尺寸
  • font-style:定义字体的风格
  • font-variant:设置小型大写字母的字体显示文本,这意味着所有的小写字母均会被转换为大写,但是所有使用小型大写字体的字母与其余文本相比,其字体尺寸更小。
  • font-stretch:允许你使文字变宽或变窄。所有主流浏览器都不支持。
  • font-size-adjust:为某个元素规定一个 aspect 值,字体的小写字母 "x" 的高度与"font-size" 高度之间的比率被称为一个字体的 aspect 值。这样就可以保持首选字体的 x-height。

2、文本系列属性

  • text-indent:文本缩进
  • text-align:文本水平对齐
  • line-height:行高
  • word-spacing:增加或减少单词间的空白(即字间隔)
  • letter-spacing:增加或减少字符间的空白(字符间距)
  • text-transform:控制文本大小写
  • direction:规定文本的书写方向
  • color:文本颜色

3、元素可见性:visibility

4、表格布局属性:caption-side、border-collapse、border-spacing、empty-cells、table-layout

5、列表属性:list-style-type、list-style-image、list-style-position、list-style

6、生成内容属性:quotes

7、光标属性:cursor

8、页面样式属性:page、page-break-inside、windows、orphans

9、声音样式属性:speak、speak-punctuation、speak-numeral、speak-header、speech-rate、volume、voice-family、pitch、pitch-range、stress、richness、、azimuth、elevation