java第三周周報(bào)

前言

本周是學(xué)習(xí)java的第三周,專注于看視頻學(xué)習(xí)而沒有做題。。

參考教程:

W3Cschool

本周學(xué)習(xí)要點(diǎn):

1.接口都是抽象類,[訪問修飾符] interface 接口名 [extends 父接口1,父接口2,... ]{常量定義,方法定義}。

2.內(nèi)部類:即一個類在另一個類的內(nèi)部,實(shí)例化Outer.Inner inner = new Outer().new Inner()。

3.System.arraycopy(src, srcPos, dest, destPos, length)可用于數(shù)組自身的拷貝,參數(shù)分別是原數(shù)組,拷貝位置,目標(biāo)數(shù)組,目標(biāo)數(shù)組起始位置,拷貝長度,若要刪除數(shù)組內(nèi)某個元素,只需要對數(shù)組自身拷貝后令最后一個值為null即可。數(shù)組擴(kuò)容可以定義另一個更大的數(shù)組然后將原數(shù)組拷貝過去。

4.Arrays.binarySearch(array,key)在數(shù)組中查找指定數(shù)字所在數(shù)字內(nèi)的索引,找不到則返回-1。

5.Arrays.toString()可將數(shù)組打印出來。

6.包裝類,因?yàn)閕nt,char等不是對象,無法向上獲取到Object提供的方法,所以才有了包裝類,即是把基本數(shù)據(jù)類型和一些方法包裝到一個類中。

7.包裝類可用intvalue doublevalue等轉(zhuǎn)換成基本數(shù)據(jù)類型。Integer.parseInt可把字符串轉(zhuǎn)換成包裝類對象,包裝類轉(zhuǎn)字符串用`toString。

8.包裝類可直接Integer a = 10=Integer a = Integer.valueof(10)編譯器會幫我們自動裝箱。同理,也有自動拆箱,int b = a=int b = a.intValue()。

9.兩個包裝類如Integer a=1234,Integer b =1234但a!=b,因?yàn)樗麄兪莾蓚€不同的對象,但比較值a.equals(b)是為true,但若處于[-128,127]范圍內(nèi)則a=b為true,因?yàn)閇-128,127]處于緩存范圍內(nèi)。

Java集合框架初步了解

image.png

在力扣中做了好多題,發(fā)現(xiàn)java的題大部分都需要運(yùn)用到集合框架,該框架提供了一些接口:
1.Collection(Collection 接口存儲一組不唯一,無序的對象。)
2.List(List 接口存儲一組不唯一,有序(插入順序)的對象。)
3.Set(Set 接口存儲一組唯一,無序的對象。)
4.SortedSet(繼承于Set保存有序的集合)
5.Map(Map 接口存儲一組鍵值對象,提供key(鍵)到value(值)的映射。)
6.Map.Entry(描述在一個Map中的一個元素(鍵/值對)。是一個Map的內(nèi)部類。)
7.SortedMap(繼承于 Map,使 Key 保持在升序排列。)
8.Enumeration(這是一個傳統(tǒng)的接口和定義的方法,通過它可以枚舉(一次獲得一個)對象集合中的元素。這個傳統(tǒng)接口已被迭代器取代。)
集合框架中提供了一些集合類:
1.AbstractCollection
實(shí)現(xiàn)了大部分的集合接口。
2.AbstractList
繼承于AbstractCollection 并且實(shí)現(xiàn)了大部分List接口。
3.AbstractSequentialList
繼承于 AbstractList ,提供了對數(shù)據(jù)元素的鏈?zhǔn)皆L問而不是隨機(jī)訪問。
4.LinkedList
該類實(shí)現(xiàn)了List接口,允許有null(空)元素。主要用于創(chuàng)建鏈表數(shù)據(jù)結(jié)構(gòu),該類沒有同步方法,如果多個線程同時訪問一個List,則必須自己實(shí)現(xiàn)訪問同步,解決方法就是在創(chuàng)建List時候構(gòu)造一個同步的List。例如:
Listlist=Collections.synchronizedList(newLinkedList(...));
LinkedList 查找效率低。
5.ArrayList
該類也是實(shí)現(xiàn)了List的接口,實(shí)現(xiàn)了可變大小的數(shù)組,隨機(jī)訪問和遍歷元素時,提供更好的性能。該類也是非同步的,在多線程的情況下不要使用。ArrayList 增長當(dāng)前長度的50%,插入刪除效率低。
6.AbstractSet
繼承于AbstractCollection 并且實(shí)現(xiàn)了大部分Set接口。
7.HashSet
該類實(shí)現(xiàn)了Set接口,不允許出現(xiàn)重復(fù)元素,不保證集合中元素的順序,允許包含值為null的元素,但最多只能一個。
8.LinkedHashSet
具有可預(yù)知迭代順序的 Set 接口的哈希表和鏈接列表實(shí)現(xiàn)。
9.TreeSet
該類實(shí)現(xiàn)了Set接口,可以實(shí)現(xiàn)排序等功能。
10.AbstractMap
實(shí)現(xiàn)了大部分的Map接口。
11.HashMap
HashMap 是一個散列表,它存儲的內(nèi)容是鍵值對(key-value)映射。
該類實(shí)現(xiàn)了Map接口,根據(jù)鍵的HashCode值存儲數(shù)據(jù),具有很快的訪問速度,最多允許一條記錄的鍵為null,不支持線程同步。
12.TreeMap
繼承了AbstractMap,并且使用一顆樹。
13.WeakHashMap
繼承AbstractMap類,使用弱密鑰的哈希表。
14.LinkedHashMap
繼承于HashMap,使用元素的自然順序?qū)υ剡M(jìn)行排序.
15.IdentityHashMap
繼承AbstractMap類,比較文檔時使用引用相等。
目前我對于集合框架還沒做進(jìn)一步了解,正在看視頻學(xué)習(xí)中。

回溯算法

大致就是對問題進(jìn)行探索求解,但不滿足條件時就進(jìn)行回溯,調(diào)用它自己,實(shí)際上也就是遞歸,事實(shí)上就是把問題的每一種可能都列出來,也就是窮舉法。回溯法可以理解為通過選擇不同的岔路口尋找目的地,一個岔路口一個岔路口的去嘗試找到目的地。如果走錯了路,繼續(xù)返回來找到岔路口的另一條路,直到找到目的地。

image.png

n 皇后問題研究的是如何將 n 個皇后放置在 n×n 的棋盤上,并且使皇后彼此之間不能相互攻擊。
上圖為 8 皇后問題的一種解法。
給定一個整數(shù) n,返回所有不同的 n 皇后問題的解決方案。
每一種解法包含一個明確的 n 皇后問題的棋子放置方案,該方案中 'Q' 和 '.' 分別代表了皇后和空位。

這道題我目前的思路就是使用回溯法,在棋盤上對于皇后而言放置一只皇后之后它的行與列以及對角線都不能放置其他皇后,所以是使用回溯法在每下一次之后若不滿足則回溯。但限于我能力我目前連官方給的題解都看不懂。。所以還需要再進(jìn)一步學(xué)習(xí)java的集合與泛型。
歡迎訪問我的博客www.redmango.top

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 回溯算法 回溯法:也稱為試探法,它并不考慮問題規(guī)模的大小,而是從問題的最明顯的最小規(guī)模開始逐步求解出可能的答案,并...
    fredal閱讀 13,993評論 0 89
  • 專業(yè)考題類型管理運(yùn)行工作負(fù)責(zé)人一般作業(yè)考題內(nèi)容選項(xiàng)A選項(xiàng)B選項(xiàng)C選項(xiàng)D選項(xiàng)E選項(xiàng)F正確答案 變電單選GYSZ本規(guī)程...
    小白兔去釣魚閱讀 10,504評論 0 13
  • Swift1> Swift和OC的區(qū)別1.1> Swift沒有地址/指針的概念1.2> 泛型1.3> 類型嚴(yán)謹(jǐn) 對...
    cosWriter閱讀 11,634評論 1 32
  • 一、基本數(shù)據(jù)類型 注釋 單行注釋:// 區(qū)域注釋:/* */ 文檔注釋:/** */ 數(shù)值 對于byte類型而言...
    龍貓小爺閱讀 4,443評論 0 16
  • 說來有意思,畫這幅山水時正逢香港回歸20周年,百感交集,心情起伏,想起97年7月1日那個夜晚在酒吧慶祝的情景,一班...
    劉佳畫室閱讀 396評論 4 5

友情鏈接更多精彩內(nèi)容