Vocab/Classes
Homework Assignments
- Writing Classes
- Constructors
- Public, Private, Protected; Access Modifiers
- this Keyword
- Inheritance, extends
- Big O notation for Hash map, Binary Search, Single loop, Nested Loop
- HOMEWORK
class Food {
    //attributes
    private String cuisine;
    private String name;
    private int mealsConsumed;
//instance variables
    //constructor
    Food(String cuisine, String name, int mealsConsumed)
    {
        this.cuisine = cuisine;
        this.name = name;
        this.mealsConsumed = mealsConsumed;
    }
    public String getName(){
        return name;
    }
}
public class Foodmain {
    public static void main(String[] args) {
        Food newFood = new Food("Indian", "Dal", 20);
        System.out.println(newFood.getName());
        
    }
}
Foodmain.main(null)
import java.util.Scanner; //allows scanners to be in program
public class averages {
  public static void main(String[] args) {
    
}}
Scanner in = new Scanner(System.in); //creates a scanner
System.out.print("Input 1st number: "); //asks user for input
int num1 = in.nextInt(); //saves number and goes to next int
System.out.println(num1);
System.out.print("Input 2nd number: "); //same as above
int num2 = in.nextInt();
System.out.println(num2);
System.out.println("The average of those numbers are " + (num1 + num2)/(2));
//prints out
//num you want to divide is however many numbers you want to average out
averages.main(null)
public class Main {//main class
    int modelYear;
    String modelName;//attributes
  
    public Main(int year, String name) {//constructor
      modelYear = year;
      modelName = name;
    }
  
    public static void main(String[] args) {
      Main myCar = new Main(1969, "Mustang");//objects
      System.out.println(myCar.modelYear + " " + myCar.modelName);
    }
  }
  
// Outputs 1969 Mustang
Main.main(null);
//public
//Exercise 1: 
//Write a program to reverse the words in a sentence
//example: the strawberry cake
//becomes: cake strawberry the
//hints: use scanner to take in words
//use split to break apart words to reverse them
import java.util.*; //import scanner
public class Main {
  public static String reverse_str_order(String input_sentence) { //
    if (input_sentence == null) {
      throw new IllegalArgumentException("Null"); //no empty strings
    }
    StringBuilder stringBuilder = new StringBuilder();
    String[] words = input_sentence.split(" ");
    for (int i = words.length - 1; i >= 0; i--) {
      stringBuilder.append(words[i]); //place words in order
      if (i != 0) { //keep going until no more words are left
        stringBuilder.append(" ");
      }
    }
    return stringBuilder.toString();
  }
}
public static void main(String[] args) { //prepares for scanning
  Scanner scanner = new Scanner(System.in);
  System.out.print("Input string: "); //asks for user input
  String input = scanner.nextLine(); //takes in next line
  System.out.println("\nResult: " + reverse_str_word(input));
}
//private
//Exercise 1: 
//Write a program to reverse the words in a sentence
//example: the strawberry cake
//becomes: cake strawberry the
//hints: use scanner to take in words
//use split to break apart words to reverse them
import java.util.*; //import scanner
public class Main {
  private static String reverse_str_order(String input_sentence) { //
    if (input_sentence == null) {
      throw new IllegalArgumentException("Null"); //no empty strings
    }
    StringBuilder stringBuilder = new StringBuilder();
    String[] words = input_sentence.split(" ");
    for (int i = words.length - 1; i >= 0; i--) {
      stringBuilder.append(words[i]); //place words in order
      if (i != 0) { //keep going until no more words are left
        stringBuilder.append(" ");
      }
    }
    return stringBuilder.toString();
  }
}
public static void main(String[] args) { //prepares for scanning
  Scanner scanner = new Scanner(System.in);
  System.out.print("Input string: "); //asks for user input
  String input = scanner.nextLine(); //takes in next line
  System.out.println("\nResult: " + reverse_str_word(input));
}
//protected
//Exercise 1: 
//Write a program to reverse the words in a sentence
//example: the strawberry cake
//becomes: cake strawberry the
//hints: use scanner to take in words
//use split to break apart words to reverse them
import java.util.*; //import scanner
public class Main {
  protected static String reverse_str_order(String input_sentence) { //
    if (input_sentence == null) {
      throw new IllegalArgumentException("Null"); //no empty strings
    }
    StringBuilder stringBuilder = new StringBuilder();
    String[] words = input_sentence.split(" ");
    for (int i = words.length - 1; i >= 0; i--) {
      stringBuilder.append(words[i]); //place words in order
      if (i != 0) { //keep going until no more words are left
        stringBuilder.append(" ");
      }
    }
    return stringBuilder.toString();
  }
}
public static void main(String[] args) { //prepares for scanning
  Scanner scanner = new Scanner(System.in);
  System.out.print("Input string: "); //asks for user input
  String input = scanner.nextLine(); //takes in next line
  System.out.println("\nResult: " + reverse_str_word(input));
}
//ex
public class Main {
    int x;
  
    // Constructor with a parameter
    public Main(int x) {
      this.x = x;
    }
  //this used to 
    // Call the constructor
    public static void main(String[] args) {
      Main myObj = new Main(5);
      System.out.println("Value of x = " + myObj.x);
    }
  }
Big O notation for Hash map, Binary Search, Single loop, Nested Loop
- language for runtime length
- 
related to efficiency 
- 
hashmap: single operation to obtain position of a searched element 
- 
- O(1)
 
- 
binary search 
- 
- O(1)
 
- 
- eliminates half the elements each time
 
- 
single loop 
- 
- O(n)
 
- 
- The next loop executes N times, if we assume the statement inside the loop is O(1), then the total time for the loop is N*O(1), which equals O(N) also known as linear time
 
- 
nested loop 
- 
- O(N*N)
 
- 
- the first loop may execute N times, but for how many first loop executes, the inner loop executes N times
 
//2021 FRQ 1A 3A
//unit 5
//1a
public int scoreGuess( String guess ) {
    int val = 0;
    int len = guess.length();
    for( int i = 0; i <= secret.length()-len; i+=1){
    String ck = secret.substring( i, i+len );
    
    if( ck.equals(guess) ){
        val++;
    }
    }
    return val*len*len;
    }
//3a
    public void addMembers(
    String[] names, int gradYear ){
        
    for( String n : names ){
    memberList.add(new MemberInfo( n, gradYear, true) );
    }
    }