목록Computer Science (46)
Code&Data Insights
[ Generic ] : 클래스 내부에서 지정하는 것이 아닌 외부에서 사용자에 의해 지정되는 것. : 컬렉션 프레임 워크에서 많이 사용되어짐 - Generics add that type of safety feature. - Generics are used in HashSet / ArrayList / HashMap - The syntax of generic * To create an instance of generic class * BaseType obj = new BaseType () * We cannot use primitive data types like int, char - Type Parameters in Java Generics -> T : Type -> E : Element -> K : Key..
* Java.lang .objects method : equals / toString() / clone() * Object class - 모든 클래스의 최상위 클래스 - java.lang.Object - 모든 클래스는 object 클래스의 method를 사용할 수 있음 *Hashcode - return : jvm(java virtual machine)이 저장한 인스턴스의 주소값을 10진수로 나타냄 - 서로다른 메모리의 두 인스턴스가 같다면? : equals() - true : 동일한 hashcode() return 값을 가져야함.
Instance - 인스턴스는 객체에 포함 - OOP(object oriented programming)의 관점에서 객체가 메모리에 할당되어 실제 사용될 때 '인스턴스'라고 부름 Static Variables ( static 변수 ) - static 변수는 인스턴스가 생성될 때 마다 다른 메모리를 가지는 것이 아니라 프로그램이 메모리에 적재(load)될 때 데이터 영역의 메모리에 생성됨 - 따라서, 인스턴스의 생성과 관계없이 클래스 이름으로 직접 참조 함 - static 변수 = 클래스 변수 ( 인스턴스 변수 = 멤버변수 ) [ArrayList vs Array ] * Array - Fixed Length를 먼저 선언함 -> size 변경 불가 - 연속된 자료구조 ( 인덱스 값이 비어있으면 X ) - ge..
2022.01.22 Java에서 loop statement인 for/while문은 반복함수를 작성할때 주로 쓰인다. 재귀함수는 자신의 함수 내부에서 자시 자신을 다시 호출하여 문제를 해결한다 => 재귀함수는 문제를 해결해 나가기 위해 원래 범위에서 더 작은 범위의 하위 문제를 먼저 해결함으로써 문제를 해결한다. 더 수학적인 사고방식 * 재귀함수는 더 간결하고 직관적인 풀이 방식이지만, 때로는 심각하게 비효율적이기때문에 알고리즘을 짤때 유의해야한다. * 반복함수를 썼을때보다 훨씬 복잡해서, 더 많은 시간이 걸릴수도 있음 -> 동적 프로그래밍으로 해결 가능
** Big O notation => O(1) : constant time / O(n) : linear time [ Interface vs Data Structure ] Interface : - specification - what data can store - what operations are supported what they mean - problem Data structure: - representation - how to store data - algorithms to support operations - solution 2 main interfaces : set / sequence 2 main Data Structure approaches : arrays / pointer-based * St..
Problem ) Verify that the relation, two ordered pairs(a,b) and (c,d) are equivalent if ad= bc, is an equivalence relation on the set S of all ordered pairs (a, b) of integers with b̸=0. --> (1) reflexive : For all (a, b) ∈ X, ab = ba. This is clearly true. Hence R is reflexive. (2) symmetric : For all (a,b),(c,d) ∈ X, suppose (a,b)R(c,d). Then ad = bc if and only if cb = ..