LeetCode Javascript 구현 100. Same Tree 171. Excel 시트 열 번호
/**
* Definition for a binary tree node.
* function TreeNode(val) {
* this.val = val;
* this.left = this.right = null;
* }
*/
/**
* @param {TreeNode} p
* @param {TreeNode} q
* @return {boolean}
*/
var isSameTree = function(p, q) {
if(p===null&&q===null){
return true;
}
if(p===null&&q!==null){
return false;
}
if(q===null&&p!==null){
return false;
}
if(p.val!==q.val){
return false;
}
if(isSameTree(p.left,q.left)&& isSameTree(p.right,q.right)){
return true;
}
else{
return false;
}
};
두 개의 이 진 트 리 가 같 는 지 아 닌 지 를 판단 하 는 것 입 니 다. 제 생각 은 여러 가지 상황 이 열 거 된 것 입 니 다. 실 수 를 하면 false 입 니 다. 그리고 false 는 맨 위로 올 라 가 마지막 에 정확 한 boolean 값 을 되 돌려 줍 니 다.
Your runtime beats 74.85% of javascriptsubmissions
171. Excel Sheet Column Number
/**
* @param {string} s
* @return {number}
*/
var titleToNumber = function(s) {
var sl = s.length;
var sc,result=0,i=0;
while(sl!==0){
sc = s.charAt(sl-1);
result = (sc.charCodeAt()-64)*Math.pow(26,i)+result;
sl--;
i++;
}
return result;
};
이 문 제 는 주로 함수 charAt () 을 사용한다.charCodeAt();Math. pow (x, y) 는 26 진법 으로 변환 하 는 연산 에 해당 하 며, 자모 와 숫자 사이 의 변환 은 ASCII 코드 로 이 루어 집 니 다.Your runtime beats 22.00% of javascriptsubmissions. 왠 지 제 방법 은 항상 매 운 닭 입 니 다.기회 가 되면 두 번 째 할 때 효율 을 추구 하 세 요.
242. Valid Anagram
이 문제 의 나의 방법 은 코드 가 시간 을 초과 하여 불행 하 다 는 것 이다.
//
var isAnagram = function(s, t) {
s = s.split("");
t = t.split("");
var bb = true;
if(s==""&&t==""){
return true;
}
if(s.length!=t.length){
return false;
}
var sl = s.length;
for(i=0;i<=sl-1;i++){
var sin = s.indexOf(t[i]);
if(sin!=-1){
delete s[sin];
// s.splice(sin,1);
// t.splice(0,1);
}
else{
bb=false;
}
}
return bb;
};
그래서 나 는 정확 한 해법 을 찾 아 다음 두 가 지 를 찾 았 다.
//
/**
* @param {string} s
* @param {string} t
* @return {boolean}
*/
var isAnagram = function(s, t) {
if(s.length !== t.length){
return false;
}
var s1 = s.split("");
var t1 = t.split("");
s1.sort();
t1.sort();
var ss = s1.join("");
var tt = t1.join("");
if(ss !== tt){
return false;
}
return true;
};
다음은 해시 표 방법 입 니 다. 산 목록 (Hash table, 해시 표 라 고도 함) 은 키 코드 값 (Key value) 에 따라 직접 접근 하 는 데이터 구조 입 니 다.즉, 키 코드 값 을 표 의 한 위치 에 비 추어 기록 에 접근 함으로써 검색 속 도 를 빠르게 하 는 것 이다.이 매 핑 함 수 는 해시 함수 라 고 하 는데 기록 을 저장 하 는 배열 을 산 목록 이 라 고 합 니 다.
데이터 구조의 힘 을 느 낀 셈 이다!
// ,
/**
* @param {string} s
* @param {string} t
* @return {boolean}
*/
var isAnagram = function(s, t) {
if(s.length !== t.length){
return false;
}
var i, dict = {};
for(i = 0; i < s.length; i++){
if(!dict[s[i]]){
dict[s[i]] = 1;
}else{
dict[s[i]]++;
}
}
for(i = 0; i < t.length; i++){
if(!dict[t[i]] || dict[t[i]] === 0){
return false;
}else{
dict[t[i]]--;
}
}
return true;
};
속상 해, 내 가 멍청 한 것 같 아 -.늦 었 다. 자 야 겠 다.꿈 에서 쉬어!
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
다양한 언어의 JSONJSON은 Javascript 표기법을 사용하여 데이터 구조를 레이아웃하는 데이터 형식입니다. 그러나 Javascript가 코드에서 이러한 구조를 나타낼 수 있는 유일한 언어는 아닙니다. 저는 일반적으로 '객체'{}...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.