このコースについて
58,040 最近の表示

100%オンライン

自分のスケジュールですぐに学習を始めてください。

柔軟性のある期限

スケジュールに従って期限をリセットします。

中級レベル

約28時間で修了

推奨:6 weeks of study, 6-10 hours/week...

英語

字幕:英語, 韓国語

習得するスキル

Trees (Data Structures)Data StructureLinked ListBinary Tree

100%オンライン

自分のスケジュールですぐに学習を始めてください。

柔軟性のある期限

スケジュールに従って期限をリセットします。

中級レベル

約28時間で修了

推奨:6 weeks of study, 6-10 hours/week...

英語

字幕:英語, 韓国語

シラバス - 本コースの学習内容

1
3時間で修了

Introduction to the Course

Welcome to the first module in the second course of our Intermediate Java Programming Specialization. We'll start with introductions again: to ourselves, the Google engineers, and the structure of the course. After the introduction we'll have a short warm up to get you comfortable with the code you will be building on to this class. But don't worry--no graded programming assignments yet. This week is all about getting comfortable and excited to learn.

...
7件のビデオ (合計21分), 9 readings, 3 quizzes
7件のビデオ
Your path through the course5 分
Concept Challenges3 分
In the Real World: Welcome from Google Engineers1 分
Project Prototype6 分
9件の学習用教材
A Customized Welcome to this Course10 分
After completing this course, you will be able to...5 分
Is this course right for me?10 分
Up Next: A short survey
If you want more practice before you begin...10 分
The structure of this course10 分
Project Overview8 分
Setting up Java and Eclipse20 分
Getting and Working with the Starter Code30 分
3の練習問題
Pre-Course Quiz10 分
Survey: Your goals for the course8 分
Quiz about the Starter Code and Course Structure10 分
2
8時間で修了

Working with Strings

This week we're going to dive into the course programming project. In the first lesson you'll learn about Strings and Regular Expressions, and in the programming assignment this week you'll apply that knowledge to adding functionality to your text editor so that it can measure the "readability" of text by calculating something called the "Flesch Readability Score". This course is focused on building code that not only does interesting things, but also finishes them quickly. So, let's get started building some code!

...
15件のビデオ (合計86分), 6 readings, 4 quizzes
15件のビデオ
Core: Basics of Strings in Java6 分
Core: Working with Strings in Java8 分
Support: For-Each Loops, part 1 of 51 分
Support: For-Each Loops, part 2 of 54 分
Support: For-Each Loops, part 3 of 54 分
Support: For-Each Loops, part 4 of 59 分
Support: For-Each Loops, part 5 of 52 分
Core: Introduction to Regular Expressions10 分
When I struggled: Regular expressions1 分
Concept Challenge: Regular Expressions9 分
Support: More with Regular Expressions8 分
Project: Programming Assignment Walk Through9 分
6件の学習用教材
A note about week numbers10 分
By the end of this week, you will be able to...4 分
Did you have trouble with any question(s) on the practice quiz?10 分
Week 2: Additional Resources10 分
Programming Assignment FAQ10 分
Week 2: Congratulations and quiz answers10 分
3の練習問題
Where to next?2 分
Strings and Regular Expressions15 分
Module and Programming Assignment Quiz10 分
3
5時間で修了

Efficiency Analysis and Benchmarking

Welcome to week 3! The text-editor application you worked with last week does something, but it doesn't do it particularly fast. This week we'll start talking about efficiency. We'll introduce the concept of "Big-O" notation, which sounds a little silly, but is really a powerful (and extremely common) way of analyzing a program's efficiency, independent of the system that it's running on and the exact details of how it's implemented. Then we'll go the other direction and dive into the details, talking about how to measure the actual running time of a piece of code to get an idea of how it really performs in practice.

...
25件のビデオ (合計145分), 3 readings, 5 quizzes
25件のビデオ
Core: Our Motivation for Asymptotic Analysis8 分
Core: Counting Operations9 分
Core: Introduction to Asymptotic Analysis, Part 19 分
Core: Introduction to Asymptotic Analysis, Part 23 分
Core: Computing Big O with Consecutive Operations5 分
Core: Computing Big O with Nested Operations5 分
Concept Challenge: Classifying Functions using Big O7 分
Support: Analyzing Selection Sort8 分
Concept Challenge: Estimating Big O from Code6 分
Core: Worst, Best, and Average Cases8 分
In the Real World: Worst Case Analysis1 分
Core: Analyzing Search Algorithms6 分
Core: Analyzing Sorting Algorithms9 分
When I struggled: Algorithm performance1 分
Core: Merge Sort11 分
Core: A Summary of Sorting4 分
Core: Common Pitfalls in Asymptotic Analysis5 分
Core: Introduction to Benchmarking6 分
Core: Using Java Time3 分
Core: Analyzing Timings7 分
Concept Challenge: Relating Timing Data to Algorithm Analysis4 分
Project: Week 3 Project Walk Through4 分
3件の学習用教材
By the end of this week, you will be able to...5 分
Week 3: Additional Resources10 分
Week 3: Congratulations and quiz answers10 分
4の練習問題
Where to next?2 分
Practice Quiz10 分
Asymptotic Notation and Analysis5 分
Module and After Programming Assignment Quiz20 分
4
10時間で修了

Interfaces, Linked Lists vs. Arrays, and Correctness

This week we'll start talking about some of the basic concepts that one expects to find in a data structures course: the idea of data abstraction, and a data structure called a Linked List. Even though Linked Lists are not very efficient structures (for the most part), they do hit home the idea of "linking" pieces of data together in your computer's memory, rather than storing the data in one contiguous region. This linking idea will be central to many of the more advanced data structures, namely trees and graphs, that are coming up later in this course and in the next course in this specialization. In this module you'll also learn tools and procedures for unit testing your code, which is a way to make sure that what you've written is correct, and a staple practice of any sophisticated software developer.

...
26件のビデオ (合計144分), 3 readings, 5 quizzes
26件のビデオ
In the Real World: Data Abstraction5 分
Core: Linked Lists vs. Arrays11 分
In the Real World: Lists vs. Arrays1 分
Core: Generics and Exceptions7 分
Core: Java Code for a Linked List6 分
Concept Challenge: Implementing linked lists, a first attempt10 分
Concept Challenge: Drawing Linked Lists, second attempt6 分
Support: Adding to a Linked List6 分
When I struggled: Data structures1 分
Core: Testing and Confidence6 分
In the Real World: How can the compiler help with testing?34
Core: Testing Practices6 分
In the Real World: How do you test the behavior of code?49
Support: JUnit in Eclipse5 分
In the Real World: Unit Testing4 分
Core: Testing Linked List's "Get" Method7 分
Concept Challenge: Which Tests Should You Run?9 分
In the Real World: Test-driven development52
Project: Linked List Assignment Walk Through6 分
When I struggled: confidence in code59
Core: Markov Text Generation6 分
Core: Implementing Markov Text Generation10 分
Optional Project: Markov Text Generation Walk Through9 分
3件の学習用教材
By the end of this week, you will be able to...5 分
Week 4: Additional Resources10 分
Week 4: Congratulations10 分
3の練習問題
Where to next?2 分
Where to next?2 分
Week 4 Reflective Programming Assignment Quiz10 分
4.8
331件のレビューChevron Right

36%

コース終了後に新しいキャリアをスタートした

34%

コースが具体的なキャリアアップにつながった

18%

昇給や昇進につながった

Data Structures and Performance からの人気レビュー

by DBOct 13th 2017

Great into to Java, instructors have clearly put thought in to the format with the choose your own learning style videos, and additional coverage where it may be needed. These have been very helpful.

by SSDec 19th 2015

The course curriculum is well designed and teaches students the basic data structures needed to be a successful software engineer. The project is good, and the weekly assignments are challenging.

講師

Avatar

Christine Alvarado

Associate Teaching Professor
Computer Science and Engineering
Avatar

Mia Minnes

Assistant Teaching Professor
Computer Science and Engineering
Avatar

Leo Porter

Associate Teaching Professor
Computer Science and Engineering

カリフォルニア大学サンディエゴ校について

UC San Diego is an academic powerhouse and economic engine, recognized as one of the top 10 public universities by U.S. News and World Report. Innovation is central to who we are and what we do. Here, students learn that knowledge isn't just acquired in the classroom—life is their laboratory....

よくある質問

  • 修了証に登録すると、すべてのビデオ、テスト、およびプログラミング課題(該当する場合)にアクセスできます。ピアレビュー課題は、セッションが開始してからのみ、提出およびレビューできます。購入せずにコースを検討することを選択する場合、特定の課題にアクセスすることはできません。

  • コースに登録する際、専門講座のすべてのコースにアクセスできます。コースの完了時には修了証を取得できます。電子修了証が成果のページに追加され、そこから修了証を印刷したり、LinkedInのプロフィールに追加したりできます。コースの内容の閲覧のみを希望する場合は、無料でコースを聴講できます。

さらに質問がある場合は、受講者向けヘルプセンターにアクセスしてください。