Notes, summaries, assignments, exams, and problems for Computer science

Stack ADT Implementation: Static vs Dynamic Representations

Computer science2.72 KB

Static Representation of a Stack ADT

In which case will we use a static representation of a Stack ADT?

We use this when the size of all the stacks we need in our application is the same. The static representation requires knowing the maximum size at compile time; that is, knowing in advance the number of items that the stacks used in this application will contain.

Pseudostatic Representation of a Stack ADT

When should we use a pseudostatic representation of a Stack ADT?

This is used when it is convenient to utilize stacks of different sizes within a program. In this representation, the maximum size of a stack is not the same for all stacks and is set at runtime when it is created. The user will be asked for the size of the stack at the time of creation,...

Continue reading "Stack ADT Implementation: Static vs Dynamic Representations" »

Mastering Web Technologies: XHTML, CSS, and AJAX Components

Computer science2.25 KB

Core Web Technologies Explained

XHTML: Structured Markup

XHTML is HTML based on XML. With it, you can combine HTML markup with XML rules. The idea is to have a standardized document and to be made accessible across multiple platforms and devices, such as a computer desktop, PDA, mobile phone, or TV.

CSS: Appearance Standards

CSS (Cascading Style Sheets) is another important technology. With CSS, you can set standards for the appearance and behavior of page elements. The colors, paragraphs, margins, spacing, thickness, or other page elements can be defined in one file. Therefore, at any time, you can totally change the way all pages of a site look by simply changing the file that contains the CSS definitions. This feature, in conjunction with AJAX,...

Continue reading "Mastering Web Technologies: XHTML, CSS, and AJAX Components" »

Web Page Creation: Design, Structure, and Optimization

Computer science2.99 KB

Creating an Effective Home Page

Once you have selected the content and structure of your website, it is crucial to understand how to effectively combine text and images to create an attractive site that draws in visitors. Keep in mind that design is merely a vehicle for presenting your content, which is ultimately what matters most. Both concepts must be balanced. Avoid saying too little with poor execution or having a visually appealing design with meaningless content. You may also encounter pages overloaded with pretty pictures that take minutes to download. A page that takes longer than 15 seconds to load will likely not be very user-friendly. Visitors prefer to go elsewhere.

Reading extensive text on a computer screen is uncomfortable and...

Continue reading "Web Page Creation: Design, Structure, and Optimization" »

Essential Internet Terminology and Networking Definitions

Computer science4.25 KB

Essential Internet and Networking Concepts

Defining the Internet and Web 2.0

The **Internet** is the transport mechanism for the World Wide Web, offering services like email, P2P networks, FTP services, games, radio, and TV. It is a **Global Computer Network (WAN)** that uses TCP/IP to connect computers and smaller networks located anywhere in the world. It is fundamentally a network of interconnected networks.

**Web 2.0** refers to the evolution of traditional Internet services and applications toward greater user interactivity. Many older applications are replaced by newer ones that operate directly on the Internet platform.

Network Protocols Explained

A **Network Protocol** is a set of rules followed by a communication system, enabling terminals...

Continue reading "Essential Internet Terminology and Networking Definitions" »

WAN, Switching, and DSL Technologies: Understanding Network Connections

Computer science3.51 KB

Understanding Wide Area Networks (WANs)

A WAN (Wide Area Network) spans a large geographic area, sometimes a country or continent. It contains a collection of machines dedicated to running user programs. These machines are called Hosts. The hosts are connected by a communication subnet. The subnet's job is to conduct messages from one host to another. The separation of the unique aspects of the communication network (subnet) and areas of application (hosts) greatly simplifies the overall design of the network.

Key Components of a WAN

  • Switching Computers (ECD): Each ECD uses a protocol responsible for routing the data correctly and providing support to computers and end-user terminals connected to it.
  • Computer User (DTE): The DTE support function
...
Continue reading "WAN, Switching, and DSL Technologies: Understanding Network Connections" »

Operating System Core Concepts

Computer science3.83 KB

Operating System (OS)

Software that manages hardware resources and provides a high-level abstraction for the user.

Process

A program currently executing.

Multitasking System

An OS allowing multiple programs to run concurrently.

Multiuser System

An OS allowing simultaneous access for multiple users.

Command Interpreter (Shell)

A user interface program that executes commands.

System Calls

Interfaces (APIs) used by programs to request services from the OS.

Single-Tasking System

Allows only one job in memory at a time. The CPU is idle during I/O operations, as it cannot be used by another process when the current one accesses system resources.

Time-Sharing System

Allows multiple terminals connected to a central computer. Enables multiple processes to use the...

Continue reading "Operating System Core Concepts" »

Software Project Management: Risks and Models

Computer science2.35 KB

Electronic Communication includes email, electronic newsletters, and video conferencing systems.

Interpersonal Network involves informal discussions with team members and external individuals who may offer valuable insights or visions to aid the team.

Decomposition of the Problem

Decomposition of the problem, also known as partitioning or elaboration, is an activity based on core software requirements analysis. The level of decomposition is not intended to be complete. Instead, it is applied in two main areas: the functionality to be delivered and the process to be used for delivery.

PROCESS: The generic stages characterizing the software process—definition, development, and support—are applicable to all software.

Software Process Models

  • Linear
...
Continue reading "Software Project Management: Risks and Models" »

Windows System Management: Tools, Security, and Registry Structure

Computer science5.13 KB

Essential System Maintenance Tools

System Utilities for Performance

  • Defragmenter: Defragments disk volumes to optimize file storage and access speed.
  • Scandisk (Check Disk): Scans, detects, and repairs errors in the file system and hardware on your hard drive.
  • Disk Cleanup: Helps free up disk space by searching for and removing unnecessary files, temporary files, and Internet cache files.
  • System Information: Collects and displays detailed system data, crucial for diagnosing hardware and software problems.

Data Protection and Backup

Backup: Creating copies of critical data stored on the computer that you wish to preserve.

Methods of Protection:

  • Firewall: Acts as a security barrier between your PC and the network, controlling incoming and outgoing traffic.
...
Continue reading "Windows System Management: Tools, Security, and Registry Structure" »

Digital Image Fundamentals: Representation, Color Models, and Acquisition

Computer science2.71 KB

Digital Images: An Introduction

With the advancement of technology, the use of images in computer systems has been increasingly employed. These applications are present in various fields, including:

  • Web pages and graphical interfaces
  • Multimedia programs and games
  • Educational programs and desktop publishing
  • Computer graphics and medicine
  • Computer vision and image processing

Thus, it becomes increasingly important that computer professionals acquire the necessary knowledge to effectively utilize this resource.

Representation of Digital Images

To better understand how images are acquired and stored, we must first examine how they are represented digitally. Representing an image involves modeling it so that its data can be interpreted by a computer.

The...

Continue reading "Digital Image Fundamentals: Representation, Color Models, and Acquisition" »

Data Link Layer Functions and Error Control

Computer science3.87 KB

Data Link Layer Tasks and Error Handling

The Data Link Layer is responsible for media access control in shared environments and comprehensive error handling.

Communication Design and Error Management

  • Data Division: Information is divided into blocks carrying a sequence number and an error detection code. If an error occurs, the block is re-received.
  • Information Control: All necessary information is included to ensure the receiver can reconstruct the data.
  • Error Correction: Detecting and correcting errors within the communication channel.
  • Flow Control: Managing the rate of data transmission.
  • Control Dialog: Managing transmission shifts and communication flow.

Design of the Link Layer

The design focuses on providing connection-oriented and reliable services...

Continue reading "Data Link Layer Functions and Error Control" »