Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
100% found this document useful (3 votes)
18 views

(eBook PDF) Data Structures and Other Objects Using Java 4th Edition instant download

The document provides links to various eBooks focused on data structures and Java programming, including multiple editions of titles like 'Data Structures and Other Objects Using Java' and 'Introduction to JAVA Programming and Data Structures.' It outlines the structure of a course designed to teach students about data types, object-oriented programming, recursion, and algorithms, emphasizing practical implementation and analysis. The text also discusses advanced projects and flexibility in topic ordering to accommodate different student backgrounds.

Uploaded by

trippdelma8l
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
100% found this document useful (3 votes)
18 views

(eBook PDF) Data Structures and Other Objects Using Java 4th Edition instant download

The document provides links to various eBooks focused on data structures and Java programming, including multiple editions of titles like 'Data Structures and Other Objects Using Java' and 'Introduction to JAVA Programming and Data Structures.' It outlines the structure of a course designed to teach students about data types, object-oriented programming, recursion, and algorithms, emphasizing practical implementation and analysis. The text also discusses advanced projects and flexibility in topic ordering to accommodate different student backgrounds.

Uploaded by

trippdelma8l
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 51

(eBook PDF) Data Structures and Other Objects

Using Java 4th Edition install download

https://ebookluna.com/product/ebook-pdf-data-structures-and-
other-objects-using-java-4th-edition/

Download more ebook from https://ebookluna.com


Instant digital products (PDF, ePub, MOBI) ready for you
Download now and discover formats that fit your needs...

(eBook PDF) Data Structures and Problem Solving Using Java


4th Edition

https://ebookluna.com/product/ebook-pdf-data-structures-and-problem-
solving-using-java-4th-edition/

ebookluna.com

(eBook PDF) Data Structures and Abstractions with Java 4th


Edition

https://ebookluna.com/product/ebook-pdf-data-structures-and-
abstractions-with-java-4th-edition/

ebookluna.com

(eBook PDF) Data Structures and Abstractions with Java 4th


Global Edition

https://ebookluna.com/product/ebook-pdf-data-structures-and-
abstractions-with-java-4th-global-edition/

ebookluna.com

(eBook PDF) Starting Out with Java: From Control


Structures through Data Structures 4th Edition

https://ebookluna.com/product/ebook-pdf-starting-out-with-java-from-
control-structures-through-data-structures-4th-edition/

ebookluna.com
Data Structures and Abstractions with Java 5th Edition
(eBook PDF)

https://ebookluna.com/product/data-structures-and-abstractions-with-
java-5th-edition-ebook-pdf/

ebookluna.com

(eBook PDF) Starting Out with Java: From Control


Structures through Objects, 7th Edition

https://ebookluna.com/product/ebook-pdf-starting-out-with-java-from-
control-structures-through-objects-7th-edition/

ebookluna.com

(eBook PDF) Starting Out with Java: From Control


Structures through Data Structures 3rd Edition

https://ebookluna.com/product/ebook-pdf-starting-out-with-java-from-
control-structures-through-data-structures-3rd-edition/

ebookluna.com

(eBook PDF) Introduction to JAVA Programming and Data


Structures Comprehensive Version 11

https://ebookluna.com/product/ebook-pdf-introduction-to-java-
programming-and-data-structures-comprehensive-version-11/

ebookluna.com

(eBook PDF) Java Foundations: Introduction to Program


Design and Data Structures 5th Edition

https://ebookluna.com/product/ebook-pdf-java-foundations-introduction-
to-program-design-and-data-structures-5th-edition/

ebookluna.com
Preface vii

each method is presented along with a precondition/postcondition contract that


completely specifies the behavior of the method. At this level, it’s important for
the students to realize that the specification is not tied to any particular choice of
implementation techniques. In fact, this same specification may be used several
times for several different implementations of the same data type.

Step 3: Use the Data Type. With the specification in place, students can write
small applications or applets to show the data type in use. These applications are
based solely on the data type’s specification because we still have not tied down
the implementation.

Step 4: Select Appropriate Data Structures and Proceed to Design and


Implement the Data Type. With a good abstract understanding of the data
type, we can select an appropriate data structure, such as an array, a linked list of
nodes, or a binary tree of nodes. For many of our data types, a first design and
implementation will select a simple approach, such as an array. Later, we will
redesign and reimplement the same data type with a more complicated underly-
ing structure.
Because we are using Java classes, an implementation of a data type will have
the selected data structures (arrays, references to other objects, etc.) as private
instance variables of the class. In my own teaching, I stress the necessity for a
clear understanding of the rules that relate the private instance variables to the
abstract notion of the data type. I require each student to write these rules in clear
English sentences that are called the invariant of the abstract data type. Once the
invariant is written, students can proceed to implementing various methods. The
invariant helps in writing correct methods because of two facts: (a) Each method
(except the constructors) knows that the invariant is true when the method begins
its work; and (b) each method is responsible for ensuring that the invariant is
again true when the method finishes.

Step 5: Analyze the Implementation. Each implementation can be analyzed


for correctness, flexibility, and time analysis of the operations (using big-O
notation). Students have a particularly strong opportunity for these analyses
when the same data type has been implemented in several different ways.

Where Will the Students Be at the End of the Course?


At the end of our course, students understand the data types inside out. They
know how to use the data types and how to implement them in several ways.
They know the practical effects of the different implementation choices. The
students can reason about efficiency with a big-O analysis and can argue for the
correctness of their implementations by referring to the invariant of the ADT.
viii Preface

the data types in One of the lasting effects of the course is the specification, design, and imple-
this book are mentation experience. The improved ability to reason about programs is also
cut-down important. But perhaps most important of all is the exposure to classes that are
versions of the easily used in many situations. The students no longer have to write everything
Java Class from scratch. We tell our students that someday they will be thinking about a
Libraries problem, and they will suddenly realize that a large chunk of the work can be
done with a bag, a stack, a queue, or some such. And this large chunk of work is
work that they won’t have to do. Instead, they will pull out the bag or stack or
queue that they wrote this semester—using it with no modifications. Or, more
likely, they will use the familiar data type from a library of standard data types,
such as the proposed Java Class Libraries. In fact, the behavior of some data
types in this text is a cut-down version of the JCL, so when students take the step
to the real JCL, they will be on familiar ground—from the standpoint of how to
use the class and also having a knowledge of the considerations that went into
building the class.

Other Foundational Topics


Throughout the course, we also lay a foundation for other aspects of “real pro-
gramming,” with coverage of the following topics beyond the basic data struc-
tures material.

Object-Oriented Programming. The foundations of object-oriented pro-


gramming are laid by giving students a strong understanding of Java classes.
The important aspects of classes are covered early: the notion of a method, the
separation into private and public members, the purpose of constructors, and a
small exposure to cloning and testing for equality. This is primarily covered in
Chapter 2, some of which can be skipped by students with a good exposure to
Java classes in the CS1 course.
Further aspects of classes are introduced when the classes first use dynamic
arrays (Chapter 3). At this point, the need for a more sophisticated clone method
is explained. Teaching this OOP method with the first use of dynamic memory
has the effect of giving the students a concrete picture of how an instance vari-
able is used as a reference to a dynamic object such as an array.
Conceptually, the largest innovation of OOP is the software reuse that occurs
via inheritance. There are certainly opportunities for introducing inheritance
right from the start of a data structures course (such as implementing a set class
as a descendant of a bag class). However, an early introduction may also result
in students juggling too many new concepts at once, resulting in a weaker under-
standing of the fundamental data structures. Therefore, in my own course, I intro-
duce inheritance at the end as a vision of things to come. But the introduction to
inheritance (Sections 13.1 and 13.2) could be covered as soon as classes are
understood. With this in mind, some instructors may wish to cover Chapter 13
earlier, just before stacks and queues, so that stacks and queues can be derived
from another class.
Preface ix

Another alternative is to identify students who already know the basics of


classes. These students can carry out an inheritance project (such as the ecosys-
tem of Section 13.3), while the rest of the students first learn about classes.

Java Objects. The Java Object type lies at the base of all the other Java
types—or at least almost all the other types. The eight primitive types are not
Java objects, and for many students, the CS1 work has been primarily with the
eight primitive types. Because of this, the first few data structures are collec-
tions of primitive values, such as a bag of integers or a sequence of double num-
bers.

Iterators. Iterators are an important part of the Java Class Libraries, allowing
a programmer to easily step through the elements in a collection class. The
Iteratable interface is introduced in Chapter 5. Throughout the rest of the
text, iterators are not directly used, although they provide a good opportunity for
programming projects, such as using a stack to implement an iterator for a
binary search tree (Chapter 9).

Recursion. First-semester courses often introduce students to recursion. But


many of the first-semester examples are tail recursion, where the final act of the
method is the recursive call. This may have given students a misleading impres-
sion that recursion is nothing more than a loop. Because of this, I prefer to avoid
early use of tail recursion in a second-semester course.
So, in our second-semester course, we emphasize recursive solutions that use
more than tail recursion. The recursion chapter provides four examples along
these lines. Two of the examples—generating random fractals and traversing a
maze—are big hits with the students. The fractal example runs as a graphical
applet, and although the maze example is text based, an adventurous student can
convert it to a graphical applet. These recursion examples (Chapter 8) appear just
before trees (Chapter 9) since it is within recursive tree algorithms that recursion
becomes vital. However, instructors who desire more emphasis on recursion can
move that topic forward, even before Chapter 2.
In a course that has time for advanced tree projects (Chapter 10), we analyze
the recursive tree algorithms, explaining the importance of keeping the trees
balanced—both to improve worst-case performance and to avoid potential
execution stack overflow.

Searching and Sorting. Chapters 11 and 12 provide fundamental coverage of


searching and sorting algorithms. The searching chapter reviews binary search
of an ordered array, which many students will have seen before. Hash tables are
also introduced in the search chapter by implementing a version of the JCL hash
table and also a second hash table that uses chaining instead of open addressing.
The sorting chapter reviews simple quadratic sorting methods, but the majority
of the chapter focuses on faster algorithms: the recursive merge sort (with
worst-case time of O(n log n)), Tony Hoare’s recursive quicksort (with average-
time O(n log n)), and the tree-based heapsort (with worst-case time of O(n log n)).
x Preface

Advanced Projects, Including Concurrency


The text offers good opportunities for optional projects that can be undertaken
by a more advanced class or by students with a stronger background in a large
class. Particular advanced projects include the following:
• Interactive applet-based test programs for any of the data structures (out-
lined in Appendix I).
• Implementing an iterator for the sequence class (see Chapter 5 Program-
ming Projects).
• Writing a deep clone method for a collection class (see Chapter 5 Pro-
gramming Projects).
• Writing an applet version of an application program (such as the maze tra-
versal in Section 8.2 or the ecosystem in Section 13.3).
• Using a stack to build an iterator for the binary search tree (see Chapter 9
Programming Projects).
• A priority queue implemented as an array of ordinary queues (Section
7.4) or implemented using a heap (Section 10.1).
• A set class implemented with B-trees (Section 10.2). I have made a partic-
ular effort on this project to provide sufficient information for students to
implement the class without need of another text. Advanced students have
successfully completed this project as independent work.
• Projects to support concurrent sorting in the final section of Chapter 12.
• An inheritance project, such as the ecosystem of Section 13.3.
• A graph class and associated graph algorithms in Chapter 14. This is
another case in which advanced students may do work on their own.

Java Language Versions


All the source code in the book has been tested to work correctly with Java 2
Standard Edition Version 7.0, including new features such as generics and new
concurrency support. Information on all of the Java products from Sun Micro-
systems is available at http://java.sun.com/products/index.html.
Flexibility of Topic Ordering
This book was written to give instructors latitude in reordering the material to
meet the specific background of students or to add early emphasis to selected
topics. The dependencies among the chapters are shown on the next page. A line
joining two boxes indicates that the upper box should be covered before the
lower box.
Here are some suggested orderings of the material:
Typical Course. Start with Chapters 1–9, skipping parts of Chapter 2 if the
students have a prior background in Java classes. Most chapters can be covered
in a week, but you may want more time for Chapter 4 (linked lists), Chapter 8
(recursion), or Chapter 9 (trees). Typically, I cover the material in 13 weeks,
Preface xi

Chapter Dependencies

At the start of the course, students should be comfortable writing


application programs and using arrays in Java.

Chapter 1
Introduction

Chapters 2–3
Classes
Reference variables
Collection classes Chapter 8
Recursion
Chapter 2 can be skipped by students
with a good background in Java classes.

Section 11.1
Chapter 4
Binary search
Linked lists
Chapter 13
Extended classes
Sections 5.1–5.4 Sec. 11.2–11.3
Generic programming Hash tables
(Also requires
Chapter 5)
Sections 5.5–5.7 Chapter 6
The Java API Stacks
Chapter 12
Iterators Sorting
Java collections (Heapsort also
Java maps Chapter 7 Chapter 9
needs Section
Queues Trees
10.1)

Section 10.1 Section 10.2 Section 10.3


Heaps B-trees Java trees

The shaded boxes provide


Section 10.4 Chapter 14
good opportunities for
Detailed tree analysis Graphs
advanced work.
xii Preface

including time for exams and extra time for linked lists and trees. Remaining
weeks can be spent on a tree project from Chapter 10 or on binary search (Sec-
tion 11.1) and sorting (Chapter 12).
Heavy OOP Emphasis. If students will cover sorting and searching else-
where, then there is time for a heavier emphasis on object-oriented program-
ming. The first three chapters are covered in detail, and then derived classes
(Section 13.1) are introduced. At this point, students can do an interesting OOP
project, perhaps based on the ecosystem of Section 13.3. The basic data struc-
tures (Chapters 4 –7) are then covered, with the queue implemented as a derived
class (Section 13.4). Finish up with recursion (Chapter 8) and trees (Chapter 9),
placing special emphasis on recursive methods.
Accelerated Course. Assign the first three chapters as independent reading in
the first week and start with Chapter 4 (linked lists). This will leave two to three
extra weeks at the end of the term so that students can spend more time on
searching, sorting, and the advanced topics (shaded in the chapter dependencies
list).
I also have taught the course with further acceleration by spending no lecture
time on stacks and queues (but assigning those chapters as reading).
Early Recursion / Early Sorting. One to three weeks may be spent at the
start of class on recursive thinking. The first reading will then be Chapters 1 and
8, perhaps supplemented by additional recursive projects.
If the recursion is covered early, you may also proceed to cover binary search
(Section 11.1) and most of the sorting algorithms (Chapter 12) before introduc-
ing collection classes.

Supplements Via the Internet


The following materials are available to all readers of this text at cssup-
port.pearsoncmg.com (or alternatively at www.cs.colorado.edu/~main/
dsoj.html):
• Source code
• Errata
In addition, the following supplements are available to qualified instructors.
Visit Addison-Wesley’s Instructor Resource Center (www.aw.com/irc) or con-
tact your local Addison-Wesley representative for access to these:
• PowerPoint® presentations
• Exam questions
• Solutions to selected programming projects
• Speaker notes
• Sample assignments
• Suggested syllabi
Preface xiii

Acknowledgments
This book grew from joint work with Walter Savitch, who continues to be an
ever-present and enthusiastic supporter, colleague, and friend. My students from
the University of Colorado at Boulder serve to provide inspiration and joy at
every turn, particularly the spring seminars in Natural Computing and Ideas in
Computing. During the past few years, the book has also been extensively
reviewed by J.D. Baker, Philip Barry, Arthur Crummer, Herbert Dershem, Greg
Dobbins, Zoran Duric, Dan Grecu, Scott Grissom, Bob Holloway, Rod Howell,
Danny Krizanc, Ran Libeskind-Hadas, Meiliu Lu, Catherine Matthews, Robert
Moll, Robert Pastel, Don Slater, Ryan Stansifer, Deborah Trytten, and John
Wegis. I thank these colleagues for their excellent critique and their encourage-
ment.
At Addison-Wesley, I thank Tracy Dunkelberger, Michael Hirsch, Bob
Engelhardt, and Stephanie Sellinger, who have provided continual support and
knowledgeable advice.
I also thank my friends and colleagues who have given me daily
encouragement and friendship during the writing of this fourth edition: Andrzej
Ehrenfeucht, Marga Powell, Grzegorz Rozenberg, and Allison Thompson-
Brown, and always my family: Janet, Tim, Hannah, Michelle, and Paul.

Michael Main (main@colorado.edu)


Boulder, Colorado
xiv Preface

Chapter List

Chapter 1 THE PHASES OF SOFTWARE DEVELOPMENT 1


Chapter 2 JAVA CLASSES AND INFORMATION HIDING 38
Chapter 3 COLLECTION CLASSES 103
Chapter 4 LINKED LISTS 175
Chapter 5 GENERIC PROGRAMMING 251
Chapter 6 STACKS 315
Chapter 7 QUEUES 360
Chapter 8 RECURSIVE THINKING 409
Chapter 9 TREES 453
Chapter 10 TREE PROJECTS 520
Chapter 11 SEARCHING 567
Chapter 12 SORTING 614
Chapter 13 SOFTWARE REUSE WITH EXTENDED CLASSES 675
Chapter 14 GRAPHS 728

APPENDIXES 775
INDEX 815
Contents xv

Contents
CHAPTER 1 THE PHASES OF SOFTWARE DEVELOPMENT 1
1.1 Specification, Design, Implementation 4
Design Technique: Decomposing the Problem 5
How to Write a Specification for a Java Method 6
Pitfall: Throw an Exception to Indicate a Failed Precondition 9
Temperature Conversion: Implementation 10
Programming Tip: Use Javadoc to Write Specifications 13
Programming Tip: Use Final Variables to Improve Clarity 13
Programming Tip: Make Exception Messages Informative 14
Programming Tip: Format Output with System.out.printf 14
Self-Test Exercises for Section 1.1 15
1.2 Running Time Analysis 16
The Stair-Counting Problem 16
Big-O Notation 21
Time Analysis of Java Methods 23
Worst-Case, Average-Case, and Best-Case Analyses 25
Self-Test Exercises for Section 1.2 26
1.3 Testing and Debugging 26
Choosing Test Data 27
Boundary Values 27
Fully Exercising Code 28
Pitfall: Avoid Impulsive Changes 29
Using a Debugger 29
Assert Statements 29
Turning Assert Statements On and Off 30
Programming Tip: Use a Separate Method for Complex Assertions 32
Pitfall: Avoid Using Assertions to Check Preconditions 34
Static Checking Tools 34
Self-Test Exercises for Section 1.3 34
Chapter Summary 35
Solutions to Self-Test Exercises 36

CHAPTER 2 JAVA CLASSES AND INFORMATION HIDING 38


2.1 Classes and Their Members 40
Defining a New Class 41
Instance Variables 41
Constructors 42
No-Arguments Constructors 43
Methods 43
Accessor Methods 44
Programming Tip: Four Reasons to Implement Accessor Methods 44
Pitfall: Division Throws Away the Fractional Part 45
Programming Tip: Use the Boolean Type for True or False Values 46
Modification Methods 46
Pitfall: Potential Arithmetic Overflows 48
Complete Definition of Throttle.java 48
Methods May Activate Other Methods 51
Self-Test Exercises for Section 2.1 51
xvi Contents

2.2 Using a Class 52


Creating and Using Objects 52
A Program with Several Throttle Objects 53
Null References 54
NullPointerException 55
Assignment Statements with Reference Variables 55
Clones 58
Testing for Equality 58
Terminology Controversy: “The Throttle That t Refers To” 59
Self-Test Exercises for Section 2.2 59
2.3 Packages 60
Declaring a Package 60
The Import Statement to Use a Package 63
The JCL Packages 63
More about Public, Private, and Package Access 63
Self-Test Exercises for Section 2.3 65
2.4 Parameters, Equals Methods, and Clones 65
The Location Class 66
Static Methods 72
Parameters That Are Objects 73
Methods May Access Private Instance Variables of Objects in Their Own Class 74
The Return Value of a Method May Be an Object 75
Programming Tip: How to Choose the Names of Methods 76
Java’s Object Type 77
Using and Implementing an Equals Method 77
Pitfall: ClassCastException 80
Every Class Has an Equals Method 80
Using and Implementing a Clone Method 81
Pitfall: Older Java Code Requires a Typecast for Clones 81
Programming Tip: Always Use super.clone for Your Clone Method 85
Programming Tip: When to Throw a Runtime Exception 85
A Demonstration Program for the Location Class 85
What Happens When a Parameter Is Changed Within a Method? 86
Self-Test Exercises for Section 2.4 89
2.5 The Java Class Libraries 90
Chapter Summary 92
Solutions to Self-Test Exercises 93
Programming Projects 95
Contents xvii

CHAPTER 3 COLLECTION CLASSES 103


3.1 A Review of Java Arrays 104
Pitfall: Exceptions That Arise from Arrays 106
The Length of an Array 106
Assignment Statements with Arrays 106
Clones of Arrays 107
The Arrays Utility Class 108
Array Parameters 110
Programming Tip: Enhanced For-Loops for Arrays 111
Self-Test Exercises for Section 3.1 112
3.2 An ADT for a Bag of Integers 113
The Bag ADT—Specification 114
OutOfMemoryError and Other Limitations for Collection Classes 118
The IntArrayBag Class—Specification 118
The IntArrayBag Class—Demonstration Program 122
The IntArrayBag Class—Design 125
The Invariant of an ADT 126
The IntArrayBag ADT—Implementation 127
Programming Tip: Cloning a Class That Contains an Array 136
The Bag ADT—Putting the Pieces Together 137
Programming Tip: Document the ADT Invariant in the Implementation File 141
The Bag ADT—Testing 141
Pitfall: An Object Can Be an Argument to Its Own Method 142
The Bag ADT—Analysis 142
Self-Test Exercises for Section 3.2 144
3.3 Programming Project: The Sequence ADT 145
The Sequence ADT—Specification 146
The Sequence ADT—Documentation 150
The Sequence ADT—Design 150
The Sequence ADT—Pseudocode for the Implementation 156
Self-Test Exercises for Section 3.3 158
3.4 Programming Project: The Polynomial 159
Self-Test Exercises for Section 3.4 162
3.5 The Java HashSet and Iterators 162
The HashSet Class 162
Some of the HashSet Members 162
Iterators 163
Pitfall: Do Not Access an Iterator’s next Item When hasNext Is False 164
Pitfall: Changing a Container Object Can Invalidate Its Iterator 164
Invalid Iterators 164
Self-Test Exercises for Section 3.5 165
Chapter Summary 165
Solutions to Self-Test Exercises 166
Programming Projects 169
xviii Contents

CHAPTER 4 LINKED LISTS 175


4.1 Fundamentals of Linked Lists 176
Declaring a Class for Nodes 177
Head Nodes, Tail Nodes 177
The Null Reference 178
Pitfall: NullPointerExceptions with Linked Lists 179
Self-Test Exercises for Section 4.1 179
4.2 Methods for Manipulating Nodes 179
Constructor for the Node Class 180
Getting and Setting the Data and Link of a Node 180
Public Versus Private Instance Variables 181
Adding a New Node at the Head of a Linked List 182
Removing a Node from the Head of a Linked List 183
Adding a New Node That Is Not at the Head 185
Removing a Node That Is Not at the Head 188
Pitfall: NullPointerExceptions with removeNodeAfter 191
Self-Test Exercises for Section 4.2 191
4.3 Manipulating an Entire Linked List 192
Computing the Length of a Linked List 193
Programming Tip: How to Traverse a Linked List 196
Pitfall: Forgetting to Test the Empty List 197
Searching for an Element in a Linked List 197
Finding a Node by Its Position in a Linked List 198
Copying a Linked List 200
A Second Copy Method, Returning Both Head and Tail References 204
Programming Tip: A Method Can Return an Array 205
Copying Part of a Linked List 206
Using Linked Lists 207
Self-Test Exercises for Section 4.3 214
4.4 The Bag ADT with a Linked List 215
Our Second Bag—Specification 215
The grab Method 219
Our Second Bag—Class Declaration 219
The Second Bag—Implementation 220
Programming Tip: Cloning a Class That Contains a Linked List 223
Programming Tip: How to Choose between Different Approaches 225
The Second Bag—Putting the Pieces Together 229
Self-Test Exercises for Section 4.4 232
4.5 Programming Project: The Sequence ADT with a Linked List 232
The Revised Sequence ADT—Design Suggestions 232
The Revised Sequence ADT—Clone Method 235
Self-Test Exercises for Section 4.5 238
4.6 Beyond Simple Linked Lists 239
Arrays Versus Linked Lists and Doubly Linked Lists 239
Dummy Nodes 240
Java’s List Classes 241
ListIterators 242
Making the Decision 243
Self-Test Exercises for Section 4.6 244
Chapter Summary 244
Solutions to Self-Test Exercises 245
Programming Projects 248
Contents xix

CHAPTER 5 GENERIC PROGRAMMING 251


5.1 Java’s Object Type and Wrapper Classes 252
Widening Conversions 253
Narrowing Conversions 254
Wrapper Classes 256
Autoboxing and Auto-Unboxing Conversions 256
Advantages and Disadvantages of Wrapper Objects 257
Self-Test Exercises for Section 5.1 257
5.2 Object Methods and Generic Methods 258
Object Methods 259
Generic Methods 259
Pitfall: Generic Method Restrictions 260
Self-Test Exercises for Section 5.2 261
5.3 Generic Classes 262
Writing a Generic Class 262
Using a Generic Class 262
Pitfall: Generic Class Restrictions 263
Details for Implementing a Generic Class 263
Creating an Array to Hold Elements of the Unknown Type 263
Retrieving E Objects from the Array 264
Warnings in Generic Code 264
Programming Tip: Suppressing Unchecked Warnings 265
Using ArrayBag as the Type of a Parameter or Return Value 266
Counting the Occurrences of an Object 266
The Collection Is Really a Collection of References to Objects 267
Set Unused References to Null 269
Steps for Converting a Collection Class to a Generic Class 269
Deep Clones for Collection Classes 271
Using the Bag of Objects 279
Details of the Story-Writing Program 282
Self-Test Exercises for Section 5.3 282
5.4 Generic Nodes 283
Nodes That Contain Object Data 283
Pitfall: Misuse of the equals Method 283
Other Collections That Use Linked Lists 285
Self-Test Exercises for Section 5.4 285
5.5 Interfaces and Iterators 286
Interfaces 286
How to Write a Class That Implements an Interface 287
Generic Interfaces and the Iterable Interface 287
How to Write a Generic Class That Implements a Generic Interface 288
The Lister Class 289
Pitfall: Don’t Change a List While an Iterator Is Being Used 291
The Comparable Generic Interface 292
Parameters That Use Interfaces 293
Using instanceof to Test Whether a Class Implements an Interface 294
The Cloneable Interface 295
Self-Test Exercises for Section 5.5 295
xx Contents

5.6 A Generic Bag Class That Implements the Iterable Interface (Optional Section) 296
Programming Tip: Enhanced For-Loops for the Iterable Interface 297
Implementing a Bag of Objects Using a Linked List and an Iterator 298
Programming Tip: External Iterators Versus Internal Iterators 298
Summary of the Four Bag Implementations 299
Self-Test Exercises for Section 5.6 299
5.7 The Java Collection Interface and Map Interface (Optional Section) 300
The Collection Interface 300
The Map Interface and the TreeMap Class 300
The TreeMap Class 302
The Word Counting Program 305
Self-Test Exercises for Section 5.7 306
Chapter Summary 309
Solutions to Self-Test Exercises 310
Programming Projects 312

CHAPTER 6 STACKS 315


6.1 Introduction to Stacks 316
The Stack Class—Specification 317
We Will Implement a Generic Stack 319
Programming Example: Reversing a Word 319
Self-Test Exercises for Section 6.1 320
6.2 Stack Applications 320
Programming Example: Balanced Parentheses 320
Programming Tip: The Switch Statement 324
Evaluating Arithmetic Expressions 325
Evaluating Arithmetic Expressions—Specification 325
Evaluating Arithmetic Expressions—Design 325
Implementation of the Evaluate Method 329
Evaluating Arithmetic Expressions—Testing and Analysis 333
Evaluating Arithmetic Expressions—Enhancements 334
Self-Test Exercises for Section 6.2 334
6.3 Implementations of the Stack ADT 335
Array Implementation of a Stack 335
Linked List Implementation of a Stack 341
Self-Test Exercises for Section 6.3 344
6.4 More Complex Stack Applications 345
Evaluating Postfix Expressions 345
Translating Infix to Postfix Notation 348
Using Precedence Rules in the Infix Expression 350
Correctness of the Conversion from Infix to Postfix 353
Self-Test Exercises for Section 6.4 354
Chapter Summary 354
Solutions to Self-Test Exercises 355
Programming Projects 356
Contents xxi

CHAPTER 7 QUEUES 360


7.1 Introduction to Queues 361
The Queue Class 362
Uses for Queues 364
Self-Test Exercises for Section 7.1 365
7.2 Queue Applications 365
Java Queues 365
Programming Example: Palindromes 366
Programming Example: Car Wash Simulation 369
Car Wash Simulation—Specification 369
Car Wash Simulation—Design 369
Car Wash Simulation—Implementing the Car Wash Classes 374
Car Wash Simulation—Implementing the Simulation Method 375
Self-Test Exercises for Section 7.2 375
7.3 Implementations of the Queue Class 383
Array Implementation of a Queue 383
Programming Tip: Use Helper Methods to Improve Clarity 386
Linked List Implementation of a Queue 393
Pitfall: Forgetting Which End Is Which 398
Self-Test Exercises for Section 7.3 398
7.4 Deques and Priority Queues (Optional Section) 399
Double-Ended Queues 399
Priority Queues 400
Priority Queue ADT—Specification 400
Priority Queue Class—An Implementation That Uses an Ordinary Queue 402
Priority Queue ADT—A Direct Implementation 403
Java’s Priority Queue 403
Self-Test Exercises for Section 7.4 404
Chapter Summary 404
Solutions to Self-Test Exercises 404
Programming Projects 406

CHAPTER 8 RECURSIVE THINKING 409


8.1 Recursive Methods 410
Tracing Recursive Calls 413
Programming Example: An Extension of writeVertical 413
A Closer Look at Recursion 415
General Form of a Successful Recursive Method 418
Self-Test Exercises for Section 8.1 419
8.2 Studies of Recursion: Fractals and Mazes 420
Programming Example: Generating Random Fractals 420
A Method for Generating Random Fractals—Specification 421
The Stopping Case for Generating a Random Fractal 426
Putting the Random Fractal Method in an Applet 426
Programming Example: Traversing a Maze 429
Traversing a Maze—Specification 429
Traversing a Maze—Design 432
Traversing a Maze—Implementation 433
The Recursive Pattern of Exhaustive Search with Backtracking 435
Programming Example: The Teddy Bear Game 437
Self-Test Exercises for Section 8.2 437
xxii Contents

8.3 Reasoning about Recursion 439


How to Ensure That There Is No Infinite Recursion in the General Case 442
Inductive Reasoning about the Correctness of a Recursive Method 444
Self-Test Exercises for Section 8.3 445
Chapter Summary 446
Solutions to Self-Test Exercises 446
Programming Projects 448

CHAPTER 9 TREES 453


9.1 Introduction to Trees 454
Binary Trees 454
Binary Taxonomy Trees 457
More Than Two Children 458
Self-Test Exercises for Section 9.1 459
9.2 Tree Representations 459
Array Representation of Complete Binary Trees 459
Representing a Binary Tree with a Generic Class for Nodes 462
Self-Test Exercises for Section 9.2 464
9.3 A Class for Binary Tree Nodes 464
Programming Example: Animal Guessing 473
Animal-Guessing Program—Design and Implementation 475
Animal-Guessing Program—Improvements 481
Self-Test Exercises for Section 9.3 481
9.4 Tree Traversals 484
Traversals of Binary Trees 484
Printing a Tree with an Indentation to Show the Depths 488
BTNode, IntBTNode, and Other Classes 497
Self-Test Exercises for Section 9.4 497
9.5 Binary Search Trees 498
The Binary Search Tree Storage Rules 498
The Binary Search Tree Bag—Implementation of Some Simple Methods 503
Counting the Occurrences of an Element in a Binary Search Tree 504
Adding a New Element to a Binary Search Tree 505
Removing an Element from a Binary Search Tree 506
The addAll, addMany, and union Methods 510
Pitfall: Violating the addTree Precondition 511
Implementing addAll 512
Time Analysis and an Internal Iterator 513
Self-Test Exercises for Section 9.5 513
Chapter Summary 514
Solutions to Self-Test Exercises 514
Programming Projects 517
Contents xxiii

CHAPTER 10 TREE PROJECTS 520


10.1 Heaps 521
The Heap Storage Rules 521
The Priority Queue Class with Heaps 522
Adding an Element to a Heap 523
Removing an Element from a Heap 524
Self-Test Exercises for Section 10.1 527
10.2 B-Trees 527
The Problem of Unbalanced Trees 527
The B-Tree Rules 528
An Example B-Tree 529
The Set Class with B-Trees 530
Searching for an Element in a B-Tree 535
Programming Tip: Private Methods to Simplify Implementations 537
Adding an Element to a B-Tree 537
The Loose Addition Operation for a B-Tree 538
A Private Method to Fix an Excess in a Child 540
Back to the add Method 541
Employing Top-Down Design 543
Removing an Element from a B-Tree 543
The Loose Removal from a B-Tree 544
A Private Method to Fix a Shortage in a Child 546
Removing the Biggest Element from a B-Tree 549
Programming Tip: Write and Test Small Pieces 549
External B-Trees 550
Self-Test Exercises for Section 10.2 551
10.3 Java Support for Trees 552
The DefaultMutableTreeNode from javax.swing.tree 552
Using the JTree Class to Display a Tree in an Applet 552
The JApplet Class 552
Programming Tip: Adding a Component to a JApplet 553
What the TreeExample Applet Displays 553
Self-Test Exercises for Section 10.3 553
10.4 Trees, Logs, and Time Analysis 558
Time Analysis for Binary Search Trees 559
Time Analysis for Heaps 559
Logarithms 562
Logarithmic Algorithms 563
Self-Test Exercises for Section 10.4 563
Chapter Summary 563
Solutions to Self-Test Exercises 564
Programming Projects 566
xxiv Contents

CHAPTER 11 SEARCHING 567


11.1 Serial Search and Binary Search 568
Serial Search 568
Serial Search—Analysis 568
Binary Search 571
Binary Search—Design 572
Pitfall: Common Indexing Errors in Binary Search Implementations 574
Binary Search—Analysis 574
Java’s Binary Search Methods 579
Self-Test Exercises for Section 11.1 581
11.2 Open-Address Hashing 581
Introduction to Hashing 581
Noninteger Keys and Java’s hashCode Method 583
Pitfall: Classes Often Need a New hashCode Method 584
The Table ADT—Specification 584
The Table ADT—Design 587
The Table ADT—Implementation 589
A Practical Illustration of Open-Address Hashing 594
Choosing a Hash Function to Reduce Collisions 596
Double Hashing to Reduce Clustering 596
Self-Test Exercises for Section 11.2 598
11.3 Using Java’s Hashtable Class 599
11.4 Chained Hashing 600
Self-Test Exercises for Section 11.4 601
11.5 Programming Project: A Table Class Implemented with Java’s Vector and LinkedList 603
A New Table Class 603
Data Structures for the New Table Class 603
Implementing the New Table Class 604
Self-Test Exercises for Section 11.6 605
11.6 Time Analysis of Hashing 605
The Load Factor of a Hash Table 607
Self-Test Exercises for Section 11.5 609
Chapter Summary 609
Solutions to Self-Test Exercises 610
Programming Projects 612

CHAPTER 12 SORTING 614


12.1 Quadratic Sorting Algorithms 615
Selectionsort—Specification 615
Selectionsort—Design 616
Selectionsort—Testing 619
Selectionsort—Analysis 620
Programming Tip: Rough Estimates Suffice for Big-O 622
Insertionsort 622
Insertionsort—Analysis 626
Self-Test Exercises for Section 12.1 629
Other documents randomly have
different content
Dyma’r meddyg yn d’od i wel’d fod pawb yn iach yn ein plith. Yr
oedd y ffaith fy mod wedi arwyddo’r erthygle fel talydd yn fy nïogelu
rhag ymosodiade hwn eto. Ac mi dd’wedaf wrthych pa’m. Pe daethe
i wybod taw fel dyn claf yn chwilio am iechyd yr es allan, deg i un na
f’ase’n gwneud y ffwdan creulona’, yn gwarafun i’r llong fyn’d i’r
porthladd nes y ceid ardystiad o’r ochr hyn i sicrhau nad o’wn wedi
bod yn dyodde’ oddiwrth glefyd heintus—hwyrach y gorfodid y llong
i aros o’r tu allan am wythnos neu ragor, yr hyn fydde’n golygu coste
o ganoedd o bune i’r perch’nogion. Ond megis y mae llawer ffordd i
ladd ci heblaw ei grogi, felly y mae rhagor nag un ffordd i dd’od allan
o honi heblaw drwy ddrws y ffrynt, a’r naill onested a’r llall.
Ha! dyma’r llythyr-gludydd, wirionedd i, yn d’od a’r llythyre i’r
bwrdd. Efe oedd yn cael y croeso mwya’ o bawb. Mor dda oedd
genyf fyn’d ’nol i Dreorci am bum’ munud, a rhoi llam dros dair mil o
filldiroedd o fôr i siarad â rhai oedd anwyl genyf. Nid yw fy “ngwir
gymar” wedi f’anghofio, nac Eunice fy merch, fy unig blentyn, o’i
hysgol yn Caint. Bendith arnynt! Erbyn imi dd’od i ben draw’r
epistole, yr o’em wedi d’od i ben draw’r daith, a bwrw angor yn ymyl
y cei. Y’mysg y dyrfa amryliw a wylie’n dyfodiad oddiar y cei, yr oedd
nifer o blant o bum’ mlwydd oed a than hyny, heb ddim o’u cwmpas
i ddynodi eu rhyw, a chan ddued a’r eboni. Tra’r o’wn yn syllu arnynt
gyda dyddordeb, diflanasant fel mwg, heb un ar ol; ac yn fy myw y
medrwn ddyfalu pa beth a ddaethe o honynt. Ond pan drois fy
llyged dros ymyl y llong yr ochr nesa’ i’r môr, mi weles ddwsin o
bene duon y’nofio fel cyrc hwnt ac yma, ac yn crio “Bacsheesh!” dros
y lle. Mi dafles ddwy neu dair ceiniog i’w canol, ac i lawr a hwy ar eu
hole fel pysgod. Buont cy’d yn d’od i’r wyneb drachefn, nes peri i mi
ofni eu bod wedi glynu yn y mwd ar y gwaelod! Ond pan ddaethant,
mi weles arwyddion yn union oedd yn d’we’yd fod yna ysgarmes
ofnadwy wedi bod o’r golwg, a’r cwbl am dair ceiniog! Gwn am
ddynion—heb sôn am blant—y’nes yma na’r Aifft, a ânt drwy
ysgarmese a farciant eu cymeriade—heb sôn am eu cyrff—hyd y
bedd, yn eu hawydd aniwall i gofleidio traed y duw Mammon.
O’r diwedd, ar ol pwffio, a ’sgriwio, a chwibanu, a gwaeddi mwy
na mwy, gollyngwyd yr angor, a sicrhawyd y llong â rhaffe wrth gyrn
ei hallor ei hun. Cyn pen pum’ munud, yr o’wn mewn bâd hwylie
y’nghwmni’r cadben yn ’sgimio dros wyneb y dw’r yn groes i’r
porthladd, i’r ochr nesa’ i’r ddinas. Enw’r badwr oedd Alec, ac enw’i
brentis oedd Achmed. Cofier taw Cymraes yw’r “ch” yn enw’r prentis.
Daeth y badwyr a mine’n ffrindiol ryfeddol cyn i mi ddychwelyd.
Daethant a ni’n gysurus i’r làn draw. Neidies o’r bâd yn gynta’, a
theimles fy nhraed yn taro tir yr Aifft am y tro cynta’ ’rioed. O’m
cwmpas yr oedd scoroedd o Arabied talgryf ac ysgwyddog, capie
cochion hirgul ar eu pene, a’u gwisgoedd yn fath o gymodiad rhwng
Dwyren a Gorllewin. Pan o’wn yn croesi’r ffin or plentyn i’r llanc, yr
wy’n cofio’n dda na yre dim fwy o arswyd arnaf na gwel’d “dyn du”
ar y ’stryd: rhedwn adre’ ar golli f’anadl, ac ni theimlwn yn ddïogel
nes y cawn fy hun yn llechu dan ffedog fy nain, fel estrys a’i ben yn
y tywod. Ac er fy mod yn ddyn “llawn deugen mlwydd oed” pan ge’s
fy hun y’nghanol yr ebonied clebrllyd y prydnawn hwnw yn
Alecsandria, nid heb ychydig bach o gyffro yn f’ochr chwith y
gall’swn gymeryd ’stoc o honynt â chil fy llygad.
Pan ddechreues sylweddoli’r ffaith fod gwadne fy nhraed a daear
yr Aifft wedi cusanu eu gilydd, meddianwyd fi gan deimlad go
ddyeithr. Dyma’r wlad y mae ei hanes y’myn’d yn ol i fabandod y
byd, a’i gwareiddiad yn berffeth “cyn bod Abraham.” Dyma’r wlad lle
magwyd Moses bach, yr addysgwyd ef yn holl ddoethineb yr Aifftied
nes y daeth yn Foses mawr, ac y dysgyblwyd ef i gyfrinion Duw’r
Hebrëwyr nes iddo fyn’d yn Foses mwy. Dyma’r wlad lle bu’r
etholedig genedl yn codi temle a phyramidie oesol y Pharöed, yn
gweithio am y rhan fwya’ o bedwar cant a haner o flynydde â
phriddfeini heb wellt iddynt, ac yn cynyddu mewn rhifedi a nerth er
gwaetha’r caledi a ro’id arnynt i’w cadw i lawr. Dyma wlad y Nile,
dyfroedd yr hon a dröwyd yn waed gan Dduw i ddïal gwaed ei bobl,
ar fynwes yr hon y gosodwyd gwaredwr cynta’ Israel i orwedd dan
gysgod yr hesg a’r prysglwyni, a’r hon a addolid gynt, ac a addolir
eto, gan filiyne o breswylwyr ei glenydd. Dyma’r wlad lle bu Duw (ys
d’wedai’r anfarwol Dewi Ogwen), yn agor dwylo Pharo’ bob yn fys i
ollwng y genedl i ffwrdd, lle bu rhan o “lu mawr” yr Arglwydd—y
llau, y llyffent, a’r locustied—yn cyflawni eu hymdeth ddinystriol wrth
orchymyn eu llywydd, a lle bu angeu’n cynal ei loddest y’mhob
teulu’r un pryd trwy’r wlad i gyd ond Gosen. Ac os cywir y casgliad
taw’r Saeson yw’r deg llwyth sydd ar wasgar, ac a gollwyd y’mysg y
cenhedloedd, dyma’r wlad sy’n cael ei llywodraethu heddyw gan
ddisgynyddion y dynion fu’n gaethion ynddi bum’ mil o flynydde’n ol.
A dyma’r wlad, mi greda’, a ddaw eto’n ail i Eden mewn
prydferthwch, i ddyffryn yr Iorddonen mewn ffrwythlonrwydd, i
Bryden Fawr mewn gwareiddiad, ac i Walia Wen mewn crefyddolder,
y’mhen dwy neu dair o genedlaethe.
Yr o’wn wedi myn’d i freuddwydio ar ddihun fel hyn, y gwaetha’ o
bob breuddwydio, a llais y cadben ddaeth a mi’n ol at sylwedde
bywyd:⁠—
“Come away, sir, or they will think you mad!”
A phan edryches, dyna lle’r oedd tẁr o fadwyr cymysgliw o’m
cwmpas yn syllu arnaf fel pe bai dau gorn ar fy mhen. Mi ge’s ragor
na dau ar fy nhraed cyn dychwelyd; ond ni fu brys mawr arnaf
wed’yn i freuddwydio ar ganol y ’stryd.
PENOD XI.
*
MEWN DALFA.

I raid i chwi fod fawr o amser y’ngwlad yr Aifft cyn y cewch


eich taro gan amldra ei thrigolion. Y maent fel locustied, nid yn
unig yn y trefi a’r dinasoedd, ond hefyd yn y pentrefi a’r wlad
oddiamgylch. D’wedir nad yw nifer trigolion Alecsandria dros dri
chan’ mil; ond wrth gerdded dros ei ’strydoedd, hawdd fydde madde’
i chwi pe haerech fod yno filiwn. Mae culni’r ’strydoedd yn peri fod y
dre’n ymddangos yn llawnach nag ydyw mewn gwirionedd. Gydag
ychydig eithriade, ac heb gyfri’ y rhan hono lle mae Ewropied yn byw
ac yn dwyn y’mlaen eu trafnidieth, chwi ellwch boeri o un ochr i’r llall
yn y ’strydoedd brodorol, a hyny heb aflonyddu ond y nesa’ peth i
ddim ar gyhyre eich gwyneb. Y canlyniad yw, fod y dynion yn
’sgwyddo’u gilydd fel mewn ffair. Weithie, chwi gewch eich hunen
y’nghanol y dyrfa ryfedda’ heb fedru symud cam i’r dde’ na’r aswy,
y’mlaen nac yn ol, mor ddigymorth ag aderyn mewn rhwyd. Chwi
aethoch i’r sefyllfa boenus yna’n ddïarwybod i chwi, a chwi ddeuwch
allan o honi’r un modd. Yn sydyn, mae’r wasgfa’n cilio; ac os ydych
yn bryderus o gywreingar i wybod yr achos o’r waredigeth, byddwch
ar eich gwyliadwrieth y tro nesa’ y cewch eich hunen mewn sefyllfa
debyg. Buan y gwelwch haner dwsin o heddgeidwed y’nghyrion y
dyrfa, a buan y clywch sŵn eu pastyne’n dyfod i wrthdarawiad â
nifer o bengloge ’styfnig ar eich cyfer. Rhydd hyn ollyngdod mawr
cyn pen ychydig eiliade, a pharod fyddwch i ddïolch taw nid ar eich
pen chwi y disgynodd y pastwn.
Soudanied yw’r heddgeidwed bron yn ddieithriad—brodorion y
wlad sy’n gorwedd i’r de a’r de-orllewin o’r Aifft; a gwneir
heddgeidwed o honynt ar gyfri’ eu gwydnwch a’u ’stoicieth. “Gwŷr
cedyrn” ydynt o ddifri’—tal, ’sgwyddog, brest-lydan, can ddued a’r
t’w’llwch, a’r duwch hwnw’n dysgleirio fel grât y gegin ar fore’
Sadwrn y’nhŷ’r wraig syber Gwefuse tewion, yn ymestyn y’mlaen,
ffroene llyden, yn ymestyn yn ol o glust i glust y’mron, a dwylo fel
dwy balfes gwedder. Ar y pen yr oedd cap coch, hirgul, tebyg i lestr
blod’yn wedi ei droi a’i wyneb yn isa’, a thusw o’r un lliw yn rhedeg
dros yr ymyl. Am y traed yr oedd esgidie o ledr, cryfion a thrwchus,
yn dwyn tebygrwydd nid bychan i ddwy wagen gymedrol; a’r syndod
i mi ydoedd, sut yr oedd y dynion yn gallu dygymod â’r fath garchar
ar ol bod yn draednoethion erioed dros dywod yr anialwch. Rhwng y
ddau eithafion yna—y pen a’r traed—yr oedd ganddynt wisg o’r un
doriad ag eiddo heddgeidwed Morganwg, ond fod y botwne’n fwy.
Maent i’w cael ar ben pob heol, os nad yn amlach; a chwi dde’wch ar
eu traws fynyched nes eich cyfiawnhau i ame’ ai tybed nad gwylio’ch
symudiade chwi oedd neges fawr eu bywyd. Ar y cynta’, wrth feddwl
am hyn, tueddwn i fyn’d dipyn yn bryderus; ond mi dde’s yn
gyfarwydd â’r gwŷr yn fuan. Yn wir, mi dde’s i delere siarad â dau
neu dri o honynt a gerddent yn ymyl y doc. Yr o’wn wedi pigo
ychydig froddege Arabaeg i fyny’r diwrnode cynta’, a defnyddiwn bob
cyfleusdra a gawn i’w hawyru. Pan y’myn’d o’r llong i’r dre’ yn y
bore’, cyfarchwn hwy â’r frawddeg, “Narak said,” wrth basio, ystyr yr
hyn yw, “Dydd da;” a phan y dychwelwn yn yr hwyr, dywedwn, “Iltak
said,” sef “Nos da:” chyfarchent fi’n ol bob tro’n siriolach nag y
gwneir yn aml y’Nghymru.
Eu pechod parod yw bod yn or-swyddogol a garw pan gânt gyfle.
Rhyngoch chwi a mine, hwyrach taw dyna yw pechod parod eu
brodyr sy’n byw y’nes atom na’r Aifft. Yn ddystaw bach, onid dyna
bechod parod pawb sy’ mewn swyddogaeth? Gan nad beth am hyny,
parodd rhein dipyn o flinder i mi ar ddau achlysur yn eu hawydd
angerddol i fawrhau eu swydd. I ddirwyn y benod i fyny’n brydlon a
blasus, mi dd’wedaf wrthych pysut.
Rhwng y docie a’r dre’ yr oedd clwydi tebyg i’r hen dollbyrth
gynt. Yn eu hymyl safe nifer o blismyn, gwaith y rhai oedd edrych na
bydde nwydde trethol o un math yn cael eu smyglo drwodd o’r
llonge i’r dre’, ac o’r dre’ i’r llonge. Yr ochr arall i’r ffordd, yn union
gyferbyn a’r clwydi, yr oedd adeilad crwn, tebyg i dŵr castell, yn yr
hwn yr eistedde dau swyddog o awdurdod dïamheuol, y rhai a
agorent ac a archwilient bob pecyn a ddrwg-dybid—ac na ddrwg-
dybid yn aml. Nid oedd hawl gan y bechgyn yn ymyl y clwydi, er
ame’ eich pecyn, i’w agor, nac hyd y’nod i’w gymeryd o’ch llaw yn y
fan hono: eu dyledswydd hwy oedd myn’d a chwi a’ch pecyn i’r tŷ
crwn yr ochr draw. Ond yr oedd ambell un y’mynu rhoi cam neu
ddau dros ben ei ddyledswydd, ac fe wnele fyr waith o’ch eiddo’n
bur ddiseremoni o dan lyged y werin, os nad argyhoeddech ef eich
bod cystal gŵr ag yntau am ei ddanedd. Gwnaed hyny â mi
ddwyweth—pan o’wn y’myn’d i ddal y trên i Gairo, a phan o’wn yn
dychwelyd. Ond mi achwynes arnynt y ddau dro yn y tŷ crwn, ac ni
chlywsoch erioed y fath dafod a gawsant! Ceisiasant wneud yr un
peth â mi wed’yn, heb fy adnabod; ond daliodd un o honynt fy
llygad mewn pryd, d’wedodd air wrth ei gymydog, a gwthiasant fi’n
llyth’renol i’m ffordd—megis y gwthie’r Aifftied yr Israelied gynt i’w
taith. Ar ol hyny, yr wyf bron yn sicr y gall’swn smyglo faint fyd
fynwn o “lâs,” a thybaco, a sigeri drwy’r clwydi o dan drwyne’r
heddgeidwed, pe dewiswn, a phe bawn yn tueddu at bethe felly, heb
iddynt dd’we’yd gair, ond yn falch i wel’d fy nghefn yn diflanu’n y
pellder.
Pa faint roe ambell un adwaenwn am gyfleusdra tebyg!
PENOD XII.
*
TREM ODDIAR Y TROTHWY.

ON yr o’wn am amldra’r trigolion pan ddaeth yr heddgeidwed i


fewn i’r fusnes—y byddai hyny’n un o’r pethe cynta’ a’ch
tarawe.
Peth arall a’ch tarawe mor debyg a dim fydde amrywieth y
gwynebe a’r gwisgoedd. Nid y bechgyn sy’n peryglu’r heddwch wrth
geisio’i gadw yw yr unig rai sy’n gwisgo capie cochion, ond ceir
hwy’n gyffredin iawn. Yr enw arnynt yw “tarbwshus,” a mi weles dri
o honynt yn cael eu gwneud wrth orchymyn, yn y siop lle’r es i’w
prynu. Gwisgwn un fy hun wedi’r nos yn Cairo, a thybiwn fy mod yn
gwneud Arab go lew. Mae’n siwr gen i taw prin y tybie neb arall
hyny. Mae’r “turban” bron mor gyffredin a’r llall. Math o ddeunydd
gwỳn, neu las, neu felyn, yw hwn, wedi ei dorchi drosodd a throsodd
am y penglog, a chryn lawer o fedr yn cael ei ddangos yn y gwaith.
Mae gan y Mahometanied selog ystyr i’r gwahanol liwie: dynodant
radde o agosrwydd ysbrydol i’r blaenor Mahomet. Gwisgir mantelli
hirllaes dros y corff hyd at y traed gan y mwyafrif o’r bobl, o bob lliw
yn y byd; ac am y traed, weithie sandale, ond yn amlach hebddynt.
Rhwbir rhyw fath o sylwedd melyn ar wadne’r traed i’w caledu rhag
y gwres, a defnyddia’r merched a’r gwragedd yr un ’stwff at ewinedd
eu dwylo—i’w caledu, medd rhai, i’w prydferthu, medd erill. Fy marn
i oedd taw prin oedd y prydferthwch; ond dyna, ’does dim cyfri’ i fod
am chwaeth. Bid fyno, mae blaenion bysedd y boneddigese’n
ymddangos yr un fath yn union a phe baent yn bwyta mêl â hwynt
drwy gydol y dydd.
Ryw ddiwrnod, mi ge’s gader i eistedd arni ar ben drws un o
swyddfeydd llonge Alecsandria, fel y gall’swn wylied y “llïaws
cymysg” a elent heibio. Bum yno awr: ac i mi, yr oedd yn un o’r orie
mwya’ difyr ac adeiladol a dreulies yn yr holl wlad.
Dyma beneth rhyw lwyth Arabedd yn pasio, naill ai mewn dwfn
fyfyrdod, a’i ben ar ei frest, neu mewn hwyl herfeiddiol, a’i drwyn yn
yr awyr. Fel rheol, clobyn o ddyn tal, cyfartal, prydweddol, lluniedd,
ystwyth, a chryf yw’r “shêch,” neu’r peneth; ei groen yn bygddu, ei
drwyn yn hir a syth, ei lyged yn fychen, duon, ac aflonydd, fel pe
baent yn chwilio am elyn ar bob llaw, ei wefuse’n feinion, ei ffroene’n
deneuon, ei farf yn dywyll a chwta, a’i ben yn hirgul. Crachboera
wrth basio pob Ewropiad, a chwi ellwch ei glywed yn murmur
melldithion ar ei ben wedi iddo fyn’d heibio. Pe cae ef a’i wehelyth
eu hewyllys, ’sgubid ymeth bob ci o Gristion allan o’r terfyne cyn pen
fawr amser, ac allan o’r byd gynted a hyny. Dyna i chwi deip o’r gwir
Arabiad,—cydnerth, cyfrwys, creulon, coelgrefyddol.
Dyma Negröed o’r canolbarth, a mwy o’r anifel yn perthyn iddynt
na dim arall: eu pene’n fawr a chrynion, eu pengloge’n gelyd a
gwlanog fel gwlan y ddafad ddu, eu crwyn yn ddu a seimlyd, eu
trwyne’n fflat, eu ffroene’n llyden, eu gwefuse’n dewion, a’u danedd
fel ifori. Plant y cyhydedd a’r anialwch ydynt, a phrin y cânt eu
hanadl y’nghanol y ’strydoedd culion.
Dyma i chwi Dwrc a’i wyneb difynegiant⁠——
Ac ar ei ol Bersiad yn ei garpie⁠——
Ac wrth ei sodle ynte un o breswylwyr Ceylon a hireth-Cymro-
am-ei-wlad yn ei lyged⁠——
A dacw Chinëad a’i gynffonbleth⁠——
A’r ochr arall i’r ’stryd ŵr o Japan a’i lyged bychen hirgrwn, a’i
aelie ymofyngar⁠——
A dyma Roegwr llyswenog⁠——
A Sais o filwr yn ei gôt goch yn ei ddilyn⁠——
Ac un o blant Abram yn plygu dan bwyse’r groes ro’ed ar gefn ei
genedl⁠——
A morwr o Ynys Pryden yn cerdded yn ’sgwarog ar ei ol⁠——
——Hach! beth yw hwn sy’n moes-ymgrymu o fy mlaen, ac o ba
le y daeth? Edrycha fel tẁr o ddillad budron parod i’w golchi, neu
dẁr o garpie parod i’w llosgi. Dyma law a braich yn ymestyn dan y
carpie tuag ataf, ac O! nid ydynt ond croen ac esgyrn ar y gore’.
Rhytha gwyneb ’sgerbydol arnaf odditan benguwch ffïedd, a llosga
dwy lamp loew y’nhylle’r llyged. Prin y mae arnaf ei ofn, a phrinach y
mae arnaf ei chwant. Dealles yn fuan taw un o fegeried y wlad
ydoedd, yn ei dawch a’i duchan; a haws oedd i Paul ysgwyd y wiber
oddiwrth ei law, nag i mi gael gwared o’r aflendid hwn. Dosbarth
sy’n nodweddiadol iawn o’r Dwyren yw ei fegeried, y rhai sy’n boen
ac yn bla i’r ymwelwyr. Glynant wrthynt fel gelod. I geisio rhoi
cyfeiriad arall i’w gamre, mi ro’is iddo geiniog; ond yn lle hel ei bac
at ei gilydd a myn’d i’w ffordd, dal i estyn ei law wnele’r hen
bechadur, gan furmur rhwng ei ddanedd, a gofyn am ragor, fel Oliver
Twist. Yr oedd yn amlwg ei fod wedi gwneud ei feddwl i fyny taw
aderyn hawdd ei blyfio o’wn i, ac nid o’wn yn chwenych ei ewinedd
fwlturedd, rhag iddo fyn’d y’nghyd a’r gwaith yn llyth’renol. Ond mi
ge’s brawf buan fod Rhaglunieth yn gofalu am ei phlant. Dyma un o
ddynion y swyddfa yn d’od allan ar y funud, pan oedd pethe’n
dechre gwisgo gwedd go ddifrifol—ac ar ol deall sut oedd pethe’n
sefyll, gỳr y cardotyn egr ac aflan ymeth gyda rhes o’r geirie mwya’
cyflym eu dylanwad a glywes erioed. Ni f’asech byth yn credu
gynted y casglodd y crëadur ei gwbl y’nghyd, ac y symudodd ei
bres’noldeb afiach o’r gym’dogeth. Afred yw ’chwanegu iddo dywallt
diluw o felldithion ar ben fy nghymwynaswr, ac anghofio dïolch i
mine am y geiniog a gawse.
Dacw ferched o Ynys Malta’n pasio, ac edrychent mor ’smala nes
imi syllu ar eu hole’n hŵy nag y mae’n weddus i ddyn prïod wneud
peth felly’n gyffredin. Yr o’ent o faintioli glew y’naturiol, ond yr oedd
y fantell oedd am danynt yn gwneud iddynt ymddangos deirgwaith
gyment. Nis gwn beth oedd deunydd y fantell, ond yr oedd yn sicr o
fod o ddeunydd ysgafn iawn. Cychwyne am y pen fel cwcwll, yna
tynid ef i mewn am y gwddf, nes yr oedd fel awyren fechan. Dyna
balŵn No. 1. Wed’yn, fe rede i lawr hyd at y wâsg, tynid ef i mewn
yno drachefn, nes cyfansoddi balŵn No. 2. No. 3 oedd y fwya’,
oblegid yr oedd hono’n rhedeg i lawr o’r wâsg i’r ffere. Wrth edrych
arnynt o’r tu ol, yr oedd y tair awyren yn ymddangos mor ddoniol o
ddigri’, nes peri i mi dynu sylw a chilwg ambell i hen shêch a ele
heibio, gan mor uchel y chwarddwn. Pan gydgerdde tair o honynt
ochr yn ochr, cyrhaeddent o balmant i balmant; a’r peth a’m syne i
oedd—os taw felly y gwisgent yn Ynys Malta, sut gebyst yr o’ent yn
cael lle yno! Yr oedd modrwye ganddynt ar bob bys, hyd y’nod y
bodfys, a breichlede ar arddwrn a migwrn—os nad yw sôn am
freichled ar figwrn yn sawru braidd yn Wyddelig. Sut bynag, dyna fel
’roedd. A peth arall oedd yn ogleisiol: O dan yr ardderchawgrwydd i
gyd, mewn sidan, a modrwye, a breichlede, yr oedd pob un o
honynt yn droednoeth, heb gysgod hosan na sandal yn agos iddynt!
PENOD XIII.
*
FFAWD A FFWDAN.

AE Alecsandrida’n ddinas fawr, a’i phoblogeth dros dri chan’


mil; ond ni weles ei haner. Mae ynddi rai ’strydoedd gwychion,
a llu o adeilade fydde’n gredyd i Paris; ond culion a brwnt oedd y
rhan fwya’. Wedi ’sgriwio drwy haner dwsin o’r rhai cula’, a dyodde’
dirdyniade heb fesur oherwydd a’mhwylledd y gyriedydd ac arafwch
y gwŷr traed i symud oddiar y ffordd, ryw ddiwrnod ce’s fy hun yn
sydyn yn y Grand Square, a’r cadben hefo mi. Mae’r ’sgwâr hwn yn
deilwng o unrhyw ddinas yn Ewrob. Dyma lle mae’r bancie, a’r
gyfnewidfa, a’r prif fasnachdai, a’r swyddfeydd pena’, a’r gwestai
gwycha’. Y’nghanol y ’sgwâr y mae cofadel i Mahomet Ali (os wy’n
cofio enw’r gŵr yn iawn), un o gynfawrion y tir, a gerddi, a sedde;
tra y rhuthra olwynion masnach a phleser heibio o bob tu ac i bob
cyfeiriad. Cedwir y ’sgwâr yn lân a chryno, ac y mae i’r llygad fel
darn o Baradwys y’nghanol yr anialwch. Allan o hono y rheda’r brif
heol a elwir ar enw Cherif Pasha, ac yma de’s i gyffyrddiad â’r Cymro
twym’galon a gwladgarol y soniaf am dano yn fy Rhagymadrodd. Oni
b’ase am dano ef a’i frawd yn Cairo, mae’n anodd gwybod pa beth a
ddaethe o honof yn y wlad bell hono. Er yn frodor o Sir Gynarfon,
mae wedi enill ei blwy’ yn yr Aifft er ys agos i ugen mlynedd; a’i
frawd yr un modd. Nid oes ei barchusach y’mhlith dinaswyr
Alecsandria. Masnachu y mae mewn nwydde Seisnig, a’i lwyddiant
yn gyfiawn ac yn sicr. Y’mhlith ei wasanaethwyr yr oedd bachgen o
Gymro o’r enw Huws o Abergele, a bachgen melynddu o’r enw
Selim, y rhai fuont arweinwyr i mi o bryd i bryd. Preswylia’r
boneddwr ychydig allan o’r ddinas, a che’s y mwynhad o dreulio un
prydnawn Sabbath o dan ei gronglwyd. Mewn “fflat” y trigai—y
“fflat” ucha’n yr adeilad, yr hwn oedd yn sicrhau nen y tŷ at
wasaneth y teulu. Yr oedd yn cynwys amryw ’stafelloedd, wedi eu
dodrefnu’n bena’n ol y dull Dwyreiniol. Yr oedd yr holl ffenestri’n
agored, a’r awel garedica’n tramwy drwy’r tŷ. Oddiar nen y tŷ ceid
golwg braf ar y ddinas a’r wlad oddiamgylch; ac mewn congl gerllaw
fe gane ceiliog yn Gymraeg, ac fe ymdreche iar neu ddwy glochdar
yn yr un iaith. Boneddiges o Aberystwyth yw Mrs. Bryan, ac yr oedd
ganddi, pan o’wn i yno, beder o’r merched bach tlysa’ fu gan fam
erioed. Gwyn oedd fy myd I’r prydnawn hwnw; bydded hwythe
wynfydedig byth gan yr Arglwydd.
Yr wyf y’meddwl imi ddechre’r benod hon gyda chyfeiriad at y
cadben a mine y’myn’d i mewn i’r ’sgwâr yn y cerbyd ar ryw
ddiwrnod, ac yr wyf y’meddwl hefyd taw’r diwrnod y glanies oedd y
diwrnod hwnw. Ar ol bod yn y llong am bythefnos, yr oedd fy aelode
isa’ dipyn yn chwareus, a chawn fy hun yn taro’n erbyn rhyw
Ismaeliad o hyd. Anodd oedd peidio, gan mor aml y dynion a chul yr
heolydd. Cymerasom y traed cyn cymeryd y cerbyd, ac wedi pasio
drwy un o byrth y deyrnged, cawsom ein hunen y’nghanol y dyrfa.
Croesasom y ’stryd—anturieth heb fod yn ddiberyg’, o herwydd y
cerbyde o bob math a chwim-basient i fyny ac i lawr. Heb fod nepell
oddi-yma y mae palas y Khedive, brenin yr Aifft. Gorchuddia ddarn
mawr o dir, ac nid oes dim yn brydferth ynddo. Llanastr o dŷ isel
ydyw, yn wỳn i gyd drosto, yn ffenestri bob tamed o hono, ac yn
gwynebu i’r môr. Yr oedd yn anodd dal i edrych arno, gan fel yr oedd
yr haul yn t’w’nu ar ei furie gwynion a’i ffenestri gloewon. Nid yw y
brenin yn byw yma’n barhaus. Yn Cairo y mae ei brif balas; ond pan
ä’n rhy boeth i fyw yno’n gysurus, symuda i Alecsandria, i gael y
fantes o awelon y môr. Dilynir ei esiampl gan y rhan fwya’ o’r
mawrion. Troisom ar y dde i heol gul, oedd yn llawn siope, a swydd-
dai, a cherbyde, a phobl, a phlant. Yr oedd yr heol guled fel, pe
safech ar ei chanol, y gallech ysgwyd dwylo’n dalïedd â’r dynion
oedd bob ochr i chwi. Yr oedd lled llaw o balmant yn rhedeg gyda’r
ochre’ ond camp i chwi fydde sefyll arno am ragor nag eiliad. A phan
wthid chwi oddiarno gan rywun neu gilydd un foment, gyrid chwi’n
ol y foment nesa’ gan ryw Jehu a fygythie redeg drosoch. Yr oedd
siope agored bob ochr i’r ’stryd, tebyg i stondine ffeirie Cymru, yn y
rhai yr oedd pob math o nwydde, a dau neu dri o beryt yn crogi wrth
eu cewyll oddiallan, ac yn ’sgrechen Arabeg i dynu sylw’r dyrfa. A mi
wna lw nad oedd sylw neb yn fwy effro na f’eiddo i.
I b’le bynag y crwydrwn yn Alecsandria, deuwn yn ol, fel swllt
drwg, i’r llong erbyn pob hwyr i gysgu. Weithie’n gynar, weithie’n
ddiweddar: dibyne hyny ar hŷd y daith am y diwrnod, ac ar y cwmni,
ac ar yr amgylchoedd y cawn fy hun ynddynt. Nid o’r un cyfeiriad y
deuwn bob tro, ac nid ar fy nhraed y byddwn bob amser. Dïogelach
oedd llogi cerbyd pan fydde wedi myn’d yn hwyr iawn, er hwyrach y
byddem yn ddau a thri mewn nifer. Gwneud cilwg gâs ar dramorwr
o’r Gorllewin mae dosbarth o’r Arabied, ac ysgyrnygant ddanedd
arno pan dybiant y gallant wneud hyny a bod yn groeniach.
Ymddygant felly liw dydd gole’; afred yw d’we’yd eu bod yn fwy
haerllug liw nos pan gânt gyfle. Ni fum i heb gwmni’n cerdded i’r
llong gyment ag unweth, ond bum yn un o ddau gryn ddwsin o
weithie; ac er na ddigwyddodd i mi na niwed nac anffod yn y
gwibdeithie nosol hyn, mi ge’s beth braw ragor na siwrne. Bernwch
chwi.
Yr oedd y cadben a mine wedi bod ar ein hynt yn rhywle, ac wedi
cael ein hunen rywbryd gyda’r nos, rhwng dau ole’, yn bur bell o’r
fan lle’r oedd y llong yn gorwedd, ac wedi blino heb gellwer: y
gwyneb a’r dwylo’n ’stiff gan lwch a haul, y pen yn poeni, a’r traed
yn poethi—yr o’em wedi myn’d i hercian fel dau drempyn er’s
meityn, ac yn hiraethu am y caban bach yn y llestr, er lleied oedd.
Drwy ryw gydymdeimlad cyfrin, daethom i ddeall beth oedd prif
angen y naill a’r llall yr un pryd; a’r canlyniad oedd, ini alw’n dau yr
un pryd ar gerbydwr a ele heibio, yr hwn, ar ol cymeryd arno ei fod
yn gwybod y cwbl ac yn deall rhagor, a’n cymerodd o’r fan hono yn
ei gerbyd. Ac O, gyfnewidiad cysurus! Rhoisom raff i’n mwynhad, a
buom ddall, mud, a byddar i bobpeth arall am ysbed chwarter awr.
Tybiaf ini dd’od ’nol i’n hamgylchoedd agosa’ tua’r un adeg. Beth
bynag, tynodd y cadben fy sylw i at gymeriad amheus y gym’dogeth
yr aem drwyddi, a thynes ine ei sylw ynte at gymeriad amheus y
gyriedydd a eistedde o’n blaen.
“Nid dyma’r ffordd i’r doc!” ebe’r cadben.
“Nid hwn yw’r dreifer a logasom!” ebwn ine.
Yr oedd y cadben y’nes i’w le na mi. Gwge hen furddynod hagr
arnom ar bob llaw, sarheid ein ffroene diniwed gan arogliade amryw
a dieithr, a merwinid ein clustie gan gri begeried. “Bwrw tân” atom y
bydde ambell i lygad wrth basio; ac er galw ar Jehu, ni chymere
arno’n clywed, ond gyru’n ynfyd a wnai. Y’mhen hir a hwyr, daethom
at ffordd haiarn, ac yr oedd yn rhaid ei chroesi neu droi’n ol. Er fod y
clwydi’n gauad, nid oedd na thrên na pheiriant yn y golwg.
Disgynodd Jehu i agor y clwydi o’r ochr hyn, ac wedi arwen y ceffyl a
nine i ganol y cledre, dyma chwibaniad! a dyma’r swyddog oedd yn
gofalu am y groesffordd yn d’od allan o’i focs, yn cydio y’mhen y
crëadur o law’r crëadur arall, ac yn gollwng allan y diluw mwya’
’sgubol o fras hyotledd. “Tra yr oedd hwn yn llefaru,” dyma ruthr o
gyfeiriad y clwydi cyferbyniol, lle’r oedd dynion a cherbyde ganddynt
yr ochr arall, ac yn disgwyl am gyfleusdra i groesi. Heb estyn dim at
y ’stori, yr oedd yno gryn haner cant o’r tafode grymusa’, yn cael eu
helpu gan draed, a dwylo, a llyged, a danedd, duon a gwynion,
fflachiade mellt y’nghanol caddug—y cerbyd, a nine ynddo, ar ganol
y rheilie—dim posib’ myn’d y’mlaen, dim siawns i fyn’d yn ol—trên yn
ymyl a’i beiriant yn ’sgrechen ei anadl allan—a’r Pandemonium
mwya’ cysurus o amgylch ogylch! Golygfa i’w chofio ydoedd.
Deallem eu bod oll y’mhen ein gyriedydd ni, ond haws oedd deall
iaith gwydde Cymru amser Nadolig, na iaith y gwerinos hyn. Yr oedd
gwyneb y cadben wedi newid ei liw droion, ac nid oedd fy ngwep ine
ronyn gwell, mi wn. Yr oedd e’ o’r farn taw gwell oedd disgyn;
barnwn ine taw gwell oedd ini lynu wrth y cerbyd, ar dir rheswm a
’sgrythyr. A dyna fu ore’. Wedi ymryddhau o’r criw ’stwrllyd, a chael
llwybr clir drachefn, cawsom ddigon o achosion i ddïolch taw nid ar
ein traed yr o’em. Yr oedd y cerbydwr wedi colli’r ffordd cyn cyredd y
clwydi, a chollodd ei ben wed’yn; y canlyniad oedd, ini gael awr arall
o chw’sfa cyn cyredd y doc, rhwng ofn a phryder a phobpeth.
Chwarddasom yn galonog y noson hono, ar ol ini gael ein traed ar
ein tomen ein hunen.
Pan o’wn wedi bod yn treulio’r prydnawn Sul hwnw gyda’r ffrind o
Gymro y sonies am dano, tua chwech o’r gloch mi feddylies ei bod
yn bryd i mi gychwyn yn ol, os o’wn am gael odfa bregeth yn y
Sefydliad i’r Morwyr, yn ol y cynllun. Yr oedd genyf awr o amser wrth
gefn. Cymerodd fy nghyfell boen i’m cyfarwyddo sut i gael gafel ar y
tram, ond bum yn hir cyn d’od o hyd iddi. Cerddes fwy na mwy, ac
er holi, nid oedd neb yn fy neall, na mine’n deall neb. O dïolch, dyma
hi o’r diwedd—ond mae hon yn rhy lawn i gynwys rhagor. Gadewes
iddi fyn’d, ac aroses am y nesa’. Wel, wel, mae hon yn llawnach na’r
llall, ac yn colli drosodd o ddynion! Rhaid imi dreio bachu’r drydedd,
neu ffarwel i’r odfa. Neidies i fyny, a ches led troed ar y grisyn i
sefyll. Ni welsoch gynifer o bobl erioed mewn un cerbyd. Dringent ar
hyd ei ochre fel gwybed. Yr oedd yn rhaid i’r tocynwr dreisio’i ffordd
drwy’r dyrfa, a synwn at ei amynedd. Mor bell ag y gall’swn wel’d,
myfi oedd yr unig ddyn gwyn o fewn i’r lle; a mi’r o’wn getyn
gwynach nag arfer hefyd. Dywedase fy nghyfell wrthyf fod y tram
y’myn’d drwy’r Grand Square, a llygadwn am hwnw’n bryderus. G’yd
y deuem iddo! Tybed fy mod wedi camgymeryd y cerbyd! Ond para i
redeg a wnae ar hyd heolydd culion—mor gulion, nes peri i mi
wasgu fy hun yn erbyn ochr y cerbyd rhag fy ’sgathru gan y murie.
Mi benderfynes lynu wrtho b’le bynag yr ae, deled a ddele i’m
cyfarfod. Cofiwn i hyny dalu’r ffordd imi’n ddiweddar. Mi ofynes i’r
swyddog fy ngosod i lawr yn ymyl y Gabara, neu’r carchar. Nid am fy
mod wedi bod ynddo, ond am y gwyddwn fy nghyfeiriad oddiwrtho.
Eithr ysgwyd ei ben a dangos ei ddanedd wnae’r swyddog pan
dd’wedes y gair, ac y mae mor debyg a dim nad o’wn yn ei seinio’n
briodol. O’r diwedd, dyma’r ’sgwâr, a dyma ben ar fy mhenyd ine.
Milldir arall, a disgynes ar gyfer y Gabara; ac ar ol ugen munud o
gerdded cyffrous, mi gyrhaeddes y Sefydliad yn brydlon erbyn y
bregeth.
Yr ochr nesa’ i’r ddinas o’r tollborth sy’n arwen o’r docie mae tua
dwsin o dafarne, isel y’mhob ystyr, y rhai sy’n byw’n bena’ ar arian a
dillade’r morwyr. Cedwir nifer o sharcied ar lun dynion yn y tylle hyn,
a denant Jac i fewn; yna dygir ei synwyre oddiarno gan y gwenwyn
a ŷf, a theflir ef allan i’r heol agos y’noethlymun. Dilynodd dau o’r
giwed hyn myfi ac un arall un noson am bellder ffordd, a chynyddent
mewn beiddgarwch er gwaetha’n protestiade. ’Doedd dim i wneud
ond troi arnynt. Prynaswn ffon o groen rhinoceros ychydig cyn hyny,
a phan y bygythies hwy â hono, ciliasant yn eu hole fel dau whelpyn
wedi eu curo. Da i mi na wyddent beth dd’wede fy nghalon!
PENOD XIV.
*
AR GRWYDR.

ERBYD sy’ mewn bri mawr yn yr Aifft yw yr un y gelwir


arabeyah arno. Tebyga i hansom cab ein gwlad ni, ond ei fod
yn ysgafnach na hwnw, a’r gyrwr o’ch blaen yn lle o’ch ol. Yr wyf yn
meddwl fy mod wedi eich dwyn i gyffyrddiad a’ch gilydd yn y benod
flaenorol. Mae canoedd o honynt i’w cael yn y prif drefi, a’r oll yn
gyfrifol i’r Llywodreth. Maent wedi eu rhifo’n ofalus, a’r gyrwyr hefyd,
yr un modd a nine. Eto, prin yr anturiech i ambell un o honynt, gan
mor ddigymeriad yr ymddengys y cerbyd a’r cerbydwr. Ac os anturio
wnewch, yr ydych yn y purdan c’yd ag y byddwch ynddo. Mi allwn
dybied nad oes yno un ddeddf yn gwahardd ac yn cosbi gyru
eithafol. Paradwys i “yrwyr ynfyd” o ddosbarth motorwyr a dwy-
rodwyr y Gorllewin; ac ni fydde gan aml i amaethwr wrthwynebiad i
ryddid gogoneddus o’r fath wrth ddychwelyd o’r dre’ brydnawn
Sadwrn. Y syndod i mi oedd, sut na fase llawer yn cael eu hanafu a’u
lladd, yn enwedig o blant, gan mor llawn a chulion y ’strydoedd, a
chan mor ddireswm y gyrid. Ni chlywsoch y fath Babel erioed ag sy’
rhwng y gyrwr yn dirwyn ar y ceffyl ac yn gwaeddi ar y dyrfa i
symud oddiar y ffordd, ar y naill law, a’r dyrfa hithe yn tywallt
anatheme ar ei ben, ar y llaw arall.
Pe gallech feddianu eich hun i gymeryd ’stoc o’r amgylchoedd,
deuech yn fuan i fod o’r farn taw un o’r cyfrynge gore’ i wel’d bywyd
cyffredin y bobl yw yr arabeyah. Yr ydych yn eu canol, ac eto’n
ddidoledig oddiwrthynt. Ond bydd chwarter o ysgol, a d’we’yd y
lleia’, yn ofynol cyn y llwyddwch i gyredd y ’stad ddymunol yna.
Rhaid i mi gyfadde i mi fethu. Y tro cynta’r es iddo, yr oedd yn
ferthyrdod perffeth. Sôn am ’storm ar y môr! Yr oedd yn felus o’i
chymharu â chwarter awr mewn arabeyah! Ni weles neb mor ddibris
o einioes a meddiane.
Yr wyf wedi sôn am olwg ddiolwg y cerbyd a’r cerbydwr; mae’n
ddrwg genyf orfod d’we’yd am y ceffyl, nad oedd ynte, druan, ddim
gwell. Yr oedd edrych arno ef, a’i gyd-grë’duried yn dwyn i’m cof bob
’stori a glywes am geffyle tene erioed. Cofiwn am y gŵr cyflym
hwnw a basie heibio i efel gôf pan oedd ceffyl yn aros i’w bedoli.
P’run ai sefyll ai gorwedd oedd y crëadur, mae’n anodd d’we’yd gan
mor dene ydoedd.
“Ai dyma lle ma’ cyffyle’n ca’l u gneud?” gofyne’r gŵr cyflym i’r
gôf.
“Eu gneud!” ebe mab Vulcan, heb wel’d yr ergyd; “bewt ti’n
feddwl?”
“O, dim ond ’mod i’n gwel’d ffrâm ceffyl yn y fan yma, dyna i
gyd!” ebe’r arabus; a ffwrdd ag e’. Gyda llaw, fe dd’wedwyd i mi fod
y gôf hwnw heb wel’d yr ergyd byth! Un go dew ei fenydd yw ambell
i ôf, ysyweth.
Sonie Kilsby am gi oedd mor dene nes ei bod yn
angenrheidrwydd poenus arno i bwyso yn erbyn y wàl bob tro y
cyfarthe!
Pan o’wn yn byw ar Gefncoedcymer, yr oedd yna bydler yn
gweithio y’ngwaith y Gyfarthfa a chanddo gi can deneued a’r teneugi
teneua’ a welsoch mewn deng mlynedd. Llusge’r ci ar ol ei feistr i’r
gwaith bob dydd. Gofynodd rhywun iddo—nid i’r ci, ond i’r pydler:
“B’le ce’st ti’r ci ’na, Ianto?”
“Dw i ddim wedi ga’l o yto,” ebe Ianto.
“Sut hyny, bachan?”
“O, d’od ma’s yn rhana’ ma’ fa,” ebe’r pydler. “Pan ddaw a ma’s i
gyd, mi fydd yn gyfrol biwr ddigynyg!”
Perthyn i’r dosbarth yna o bedwar-carnolion ysgerbydol yr oedd y
ceffyl a lusge’r cerbyd y bum i ynddo ar un achlysur yn Alecsandria.
Tebyg i’r buchod a welse Pharo’n ei freuddwyd—drwg yr olwg a chul
o gig. Yr oedd ffrewyll y gyrwr ar ei wàr a’i ochre’n ddibaid, a’i lais
cryglyd yn gwaeddi ar y bobl am droi o’r neilldu’n ddïatal. Lletye
’nghalon yn fy ngwddf c’yd ag yr eisteddwn o’r tu ol iddo. Gwelwn
ddynion a merched yn cael eu gwasgar o’i flaen fel haid o ddefed; a
chauwn fy llyged yn dỳn pan dybiwn fod cerbyd arall y’myn’d i’n
rhedeg i lawr.
Yr unig dro y mwynhês i fy hun mewn arabeyah oedd pan aeth y
cadben a mine am ddarn diwrnod allan o’r dre’ i wel’d Colofn Pompi,
y Bedde Tanddaearol, Gerddi’r Brenin, glane’r Nile, a Ramle, un o’r
maesdrefi. Ac am y tro hwnw yr wyf y’myn’d i sôn yn awr.
Heblaw Jehu, llogasom ddyn o’r enw Moses yn arweinydd i ni; ac
yr oedd yr enw a’r swydd yn taro eu gilydd i’r dim. Arabiad oedd
Moses, ac arno ef yr oedd gofal y llong yn y nos c’yd ag yr oedd yn y
doc. Edryche’n frwnt ddiraen wrth ei waith, ond y prydnawn hwn yr
oedd wedi ymbincio’n anghyffredin; yr oedd ei wisg yn wèn fel eira,
a’i ymddangosiad yn foneddigedd dros ben. Efe oedd yr unig Arabiad
a glywes yn ceisio siarad Cymraeg; ond cystal i mi ei dd’we’yd a
pheidio, nid oedd ei eirie’n yr hen iaith mor ddewisol ag y b’aswn yn
caru eu bod. Yr oedd ganddo ddwy wraig a thri o blant. Bydde’r prif
swyddog yn hoff o gellwer ag ef.
“P’sawl gwraig, Moses?”
“Dwy.”
“P’sut wyt ti’n gallu rheoli dwy, a fine’n methu rheoli un?”
“Rhoi un i ofalu am y llall, a fine i ofalu am hono,” ebe Moses.
“Faint o blant sy’ genti?”
“Tri.”
“O, un-a-haner bob un, ai e? Oes cynffone gyda nhw, Moses?”
“Nag oes,” ebe’r Arab yn syn.
“Siwr o fod—mwncis bach ydyn’ nhw, Moses,—chwilia di am u
cynffone nhw heno!” Ni ddangose Moses gysgod anfoddlonrwydd i’r
cateceisio manwl hwn, ond fe ddangose’i ddanedd gwynion mewn
llawn tymer dda.
Y lle cynta’ y daethom iddo oedd Colofn Pompi a’r Bedde. Un
darn anferth yw’r Golofn, sydd yn peri i chwi synu sut y gosodwyd hi
ar ei phen erioed. Un o gadfridogion Rhufain oedd Pompi, yn byw
oddeutu haner cant o flynydde cyn Crist. Ai ganddo ef ei hun, ynte
gan rywun arall er cof am dano, y codwyd y golofn, ’does neb a ŵyr.
Ond mae’n sicr o fod yn hen iawn, fel bron bobpeth sydd yn y wlad
’rwy’n traethu am dani.
Yn ymyl mae’r Catacombs, neu’r Bedde Tanddaearol. Yn gynta’,
eir i lawr ddeugen o risie’n yr awyr agored; yn ail, eir i fewn yn
sydyn i fath o dwnel; ac yn drydydd, disgynir yn raddol wrth ole’
canwylle nes y deuir i d’w’llwch y gellir ei deimlo. Tybir taw’r
Crist’nogion Coptaidd cynta’ gleddid yn y bedde hyn; ond mae’r cyrff
oll wedi eu symud i’r Amgueddfa yn Alecsandria. Mi weles nifer o
honynt yr un diwrnod wrth ddychwelyd. Y bedde’n unig oedd yma.
Math o dylle hirgul oedd y rhein, wedi eu gweithio i fewn i’r ochre,
ac i’w cael ar bob llaw i’r llwybre. Mae’n hawdd i ddyn golli ei ffordd
yn y dyrysle hwn, ac oni bai fod genym arweinydd lleol,—ein harwen
at y lle’n unig wnai Moses,—mae’n amheus genyf a wele’r cadben a
mine ole’ dydd drachefn. Wesul tipyn, daethom i ’sgwâr, o’r hwn yr
oedd yr holl lwybre’n rhedeg, ac i’r hwn y dychwelent. Ar ganol y
’sgwâr yr oedd careg anferth o dywod wedi caledu, a throsti yr oedd
canoedd o enwe wedi eu ’sgriblo gan bersone fuont yno, fel fy
hunan, yn aberthu i dduw henafieth. Ar ol chwilio am damed glân,
tores ine f’enw y’mhlith y llu, er afrwydded oedd. Yr oedd hyn yn fwy
o gamp nag a feddyliech; ac wedi gorffen, dyhewn am dd’od o’r twll
myglyd i anadlu awyr iach Duw’r Nefoedd. Pan ddaethom allan, yr
oe’m yn chw’su fel tanwyr, yn chw’thu fel cŵn ar wres mawr, yn
wincio ar yr haul fel dallhuanod, ac yn siglo fel dynion wedi meddwi.
Ac wedi meddwi yr o’em ar beth gwaeth na chwrw a licwr,—ar awyr
wenwynig, yr hon y buom awr gron gyfan yn drachtio o honi.
Ffwrdd a ni wed’yn i gyfeiriad yr afon, a buom yn olwyno gyda’i
glane am hir ffordd. Yr ochr arall iddi yr oedd canoedd o fwdgabane,
a dynion yn ymolchi ynddi ac yn yfed o honi. Yr ochr hyn iddi yr
oedd gerddi gorwych, pyrth henafol yn arwen i mewn i balase teg,
ac hyd y’nod i hen furddyne adfeiliedig. Gwelwn ambell i fad
afrosgo’n croesi, ac weithie’n glynu’n yr hesg. Tyfe’r hesg yn dew ac
yn uchel dros rane o’r afon,—mor dew ac mor uchel nes cuddio
peryg’ i’r ymdrochwyr a’r gwehynwyr dwfr. Welwch chi’r tamed tywyll
acw sydd yn edrych fel darn o bren pwdr y’nghanol y llafrwyn? Ha!
dyna fe’n symud, ac yn llithro’i lawr i’r dw’r. Beth yw hwna, Moses?
Dyna un o grocodilied yr afon, y rhai a ddeuant i lawr can ised a hyn
yn amser newyn, a’r rhai a addolir gan y bobl fwya’ anwybodus, fel
na wnant ddim iddynt i achub eu bywyd eu hun na bywyde eu
gwragedd a’u plant.
Ar ol teithio tair milldir neu ragor gyda glàn yr afon, troisom i
fewn i erddi’r Brenin. Maent yn eang ac yn ffrwythlon, ond mor afler
a’r tamed gardd sydd genyf fi y tu cefn i’r tŷ lle’r wyf yn byw. Ceir
ynddynt goed palmwydd wrth y miloedd, yn enwedig y date-palm.
Tŷf y rhai’n yn dalion iawn. Mi weles ddynion yn rhedeg i fyny i’w
brige ucha’ fel gwiwerod, i’w talfyru. Rhwymant wregys cryf am eu
canol, ac am y pien, ac esgynant mewn cyfres o herciade. Mae yma
hefyd nifer fawr o goed ffigys a banane. Nid hir y buom cyn myn’d i’r
Amgueddfa i wel’d y cyrff fu’n gorwedd ar yr estyll yn y Bedde
Tanddaearol. Ni ddeil hon i’w chymharu âg Amgueddfa Ghizeh, yn
Cairo. Ei phrif nodwedd oedd hyfdra’r swyddogion ofalent am dani.
Codent dreth arnoch am gael anadlu ’mron, a bu gorfod i mi siarad
tipyn o Gymraeg â hwy cyn iddynt dewi, er mawr ddifyrwch y
cadben. Cafodd amgenach dylanwad arnynt hwy nag a gafodd ar
hen sipsiwnen wrth draed y Pyramidie, am yr hon y cewch glwed
eto. Bu’r hen iaith o fantes anrhaethol i mi ragor na siwrne. Yr oedd
y cnafon yn deall acen a goslef y Sais a’r Ffrancwr; ond nid oedd
ganddynt syniad am dafodieth Cwm Rhondda, a gosodwn y
diffoddydd arnynt mewn byr amser.
Aethom allan i’r wlad drachefn, o dan gysgod y palmwydd am
filldiroedd, nes d’od i Ramle’, un o faesdrefi Alecsandria. Dyma lle
mae’r bendefigeth yn byw, a braf yw eu byd. Erbyn hyn yr oedd yn
dechre’ nosi, a throisom yn ein hole. Pan gyrhaeddasom y llong, yr
o’em ein dau mor newynog a bleiddied ar amser eira, ac mor flinedig
a phlant sy’n talu ’mlaen am eu gwely wrth chware’ ar hyd y dydd.
A d’wedwch chwi os na fum yn crwydro y diwrnod hwnw.
PENOD XV.
*
YN Y TREN I GAIRO.

AE gwel’d trên yn yr Aifft yn ysbeilio’r wlad henafol hono o


swm nid bychan o’r gogoniant gysylltir â hi’n gyffredin, ac â
phob gwlad o’i bath. Bid siwr, ceir ynddi gamelod ac asynod, ychen a
dromedaried, y’nghyda phedwaried cyffelyb; ond ceir ynddi drên
hefyd, ac y mae hwnw’n Gorllewineiddio pethe’n anghyffredin. Ac
eto, oni bai am y trên, sut y galle teithwyr glirio cyment o dir mor
ddidrafferth, a gwel’d cynifer o ryfeddode mewn can lleied amser? Yr
oedd y pryd hwnw’n rhedeg i Cartŵm, pellder o ddwy fil o
filldiroedd; ac y mae wedi rhedeg bwer y’mhellach oddiar hyny.
Tebyg yw na orphwysa mwy nes y tramwya o eitha’r Gogledd i
eitha’r De. Pan yn codi tocyn o Alecsandria i Cairo, mi ofynes o
gywreinrwydd pa faint a gostie tocyn o Alecsandria i Cartŵm un
ffordd: a be’ feddyliech oedd yr atebiad? “Deg punt ar hugen!” Mi
wnes fy meddwl i fyny’n union taw gwell i mi oedd peidio myn’d mor
bell a hyny y tro hwn, gan’ad sut y bydde wed’yn. Gorwedda dros
chwech ugen milldir o dir gwastad i’r llygad rhwng Alecsandria a
Cairo, a rhedasom y pellder yna, neu rhedodd y trên a ni, mewn
teirawr, yn gwneud cyfartaledd o ddeugen milldir yr awr. Pan gofiwch
nad yw’r peiriant na’r peirianwyr i fyny y’mhopeth ag eiddo’n gwlad
ni, chwi gydnabyddwch ini redeg yr yrfa’n òd o ebrwydd. Mi dybia’
fod y daith hon yn werth penod, ac felly cychwynwn yn ddiymdroi.
Codir y tocyn o’r tu allan i’r orsaf: ni cheir mynediad i mewn hyd
y’nod i’r ystafell aros, heb sôn am y platfform, heh docyn teithio.
Hyny yw, at wasaneth teithwyr, a theithwyr yn unig, mae’r orsaf yn
Alecsandria. Cyflwynaf y wers i awdurdode rheilffyrdd y wlad hon.
Nid yw Cairo cystal. Mae tri dosbarth yn perthyn i drên yr Aifft fel
trên Lloegr, gyda hyn o wahanieth,—nid yw’r trydydd i’w gael gyda’r
cyntaf a’r ail. Ymffurfia hwnw’n drên ar ei hen ei hun. Ce’s gip arno
pan yn aros yn un o’r gorsafe, a thebygwn ef yn fy meddwl i drycie
dâ’r T. V. R. ugen mlynedd yn ol! Es i fewn i gerbyd o’r ail ddosbarth.
Mae tri neu bedwar o’r rhein mor agos gysylltiedig â’u gilydd, fel y
gellwch gerdded yn gysurus o un pen i’r naill i’r pen arall i’r llall. Mae
llwybr i’w gael o bwrpas i’r perwyl. Rhwng pob cerbyd mae platfform
isel, i fyny’r hwn yr ewch wrth fynd i fewn, ac ar yr hwn y gellwch
sefyll, os dewiswch, ac os na thry eich pen yn Brotestant, c’yd ag y
mynoch, yn yr awyr agored, ac heb ddim rhyngoch a’r wlad
oddiallan. Bum yn sefyll arno droion am amser hir, a mi dd’wedaf
wrthych yn union pa’m.
Yr oedd y trên yn llawn o deithwyr, ac ni fum yn cyd-drafaelu â
theithwyr rhyfeddach yn fy nydd erioed. Brodorion y wlad o’ent gan
mwya’, yn dduon, a melynion, a chochion,—a budron hefyd lawer o
honynt. Eisteddent ar y sedde a’u traed odditanynt fel teilwried, ac
ysmygent sigreti’n ddidor. Ychydig sylw wnaent o’u gilydd, a llai fyth
o’m siort i, os na fydde eisie tân arnynt; dïolchent am fatsen fel pe
bai ffortiwn. Bum am ysbed heb wel’d neb arall, a thybiwn taw myfi
oedd yr unig ddyn gwyn yn y lle,—er y gell’sid ame’ fy lliw ine. Ond
mi gwrddes â dau Ellmyniad yn fuan ar fy hynt drwy’r cerbyde, y
rhai a edrychent can wyllted a geifr ar darane. Yr o’wn wedi eu
gwel’d o’r blaen y’ngerddi’r Brenin yn Alecsandria. Wrth eu clywed
yn ymddifyru gyda’r “ch,” mi ofynes iddynt yn Gymraeg:
“Ai sych yr ymbesychasoch?”
Ond edrych arnaf mor hurt a lloi a wnaent. Treies wedy’n:
“Ai chwech-a-chwech yr un a roisoch am berchyll bychen cochion
eich hwch goch chwychwi a’ch chwaer?”
Bobl anwyl! Dyma’r gafod greulona’n dilyn mewn atebiad, nes y
bu gorfod i mi droi at ryw hen “shêch” a eistedde gyferbyn â mi am
amddiffyniad, yr hwn oedd yn dangos ei ddanedd fel pe’n deall y
cwbl.
Yr oedd digon o ffenestri yno i foddloni ffatri, ac yr o’ent oll yn
agored. Y canlyniad oedd fod y gwynt mwya’ dïarbed yn tramwy pob
cwr o’r trên, yn cario lon’d ei gôl o dywod, ac yn ei daflu i’ch llyged
ac ar draws eich dillad mor ddiseremoni a phe baech wedi rhoi
archeb am y cwbl. Lle ofnadwy ydoedd i ddyn oedd yn ferthyr i’r
ddanodd! Weithie, fe ddeue’r gwynt gyda’r fath ruthr direidus nes
dynoethi’ch pen, oni fyddech ar eich gwyliadwrieth. Gwnaeth hyny â
mi siwrne, a bu mor anfoesgar a bwrw fy nghapan i wyneb yr hen
“shêch” y sonies am dano. Bu raid i mi wneud ymddiheurad i hwnw
drosof fy hun a’r gwynt, a’r aberth cymod oedd haner dwsin o
“fatsus.” Dyna pa’m y safwn am ysbed ar y platfform, i gael llai o
wynt a mwy o gysgod. Ond ’roedd yno ddigon wed’yn i droi meline
Sir Fôn bob un! Gwell oedd peidio ffraeo âg ef, oblegid yr oedd
meddyginieth yn ei esgyll oddiwrth wres a phob drwg-arogl.
Yn rhyfedd iawn, ni welwn un o’r “rhyw deg” yn un man wrth
gychwyn, dim ond dynion geirwon lle bynag yr awn. Ai tybed fod
merched yr Aifft yn fwy ceidwadol na’r dynion, gan ddewis yn
hytrach lynu wrth yr asyn a’r camel na chymeryd eu llusgo wrth
gynffon yr agerbeiriant? Ond cyn cyredd Cairo, mi ge’s allan fod
ganddynt hwy eu cerbyd eu hunen, a gwae’r crëadur y gelwir “dyn”
arno fuase’n anturio i’w presenoldeb! Y fath chwedleua raid fod yn y
cerbyd hwnw! Oblegid mae’r foneddiges o’r Dwyren mor hoff o ’stori
ag yw ei chwaer o’r Gorllewin am ei danedd.
Sut yr edrycha pethe oddiallan? Drwy ba fath wlad y teithiwn?
Wel, mae pethe oddi allan mor hynod ag yw pethe oddifewn. Nid
trwy ganol caëe gwair a meusydd llafur, coed a pherthi, mynydde a
brynie, heirdd drefi a harddach pentrefi y teithiwn, fel pe bawn
y’Nghymru, ond dros wastadedd o dywod, a mwd, a dwfr,—tywod, a
mwd, a dwfr,—tywod, a mwd, a dwfr. Pasiwn heibio i wmbredd o
bentrefi, yn fwy ac yn llai, a ’doedd dim yn hardd ynddynt i lygad a
chwaeth Cymro. Tomene o laid wedi sychu’n yr haul nes bod fel y
gallestr—nen y tŷ’n fflat, lle mae dillade’n crogi, dynion yn gorwedd,
a ffowls yn ffraeo—yr ochre wedi eu rhidyllu bob hyn-a-hyn, y tylle
mwya’n golygu’r dryse, a’r tylle lleia’n golygu’r ffenestri. Plant yn
chware’ heb bilin yn eu cylch i’w cloffi—y mame’n clebran â’u gilydd
yn y cywer C dwbl—y gwŷr yn ceisio dal pen rheswm â’u hasynod a’r
asynod y’methu cydwel’d. Ychydig o balmwydd talion yn ysgwyd eu
dail uwch eu pene, a’r amgylchoedd pell ac agos yn cyfranogi’n
bena’ o dywod, a mwd, a dwfr—tywod, a mwd, a dwfr.
Dyna’r pentrefi; a’r unig wahanieth rhyngddynt a’r trefi oedd fod
yr ola’n domene mwy eu maint. Ymsaetha pinacl y “mosc” i fyny o
ganol y pentre’ gwaela’, ac y maent i’w gwel’d yn y trefi draw bron
can amled a’r tai. Heb fod nepell o’r pentrefi agosa’, gwelwn ddarn o
dir wedi ei gau i fewn, a chodiade trefnus a chyfartal dros y rhan
fwya’ o hono. Wedi imi gael esboniad, mi ddealles taw mynwentydd
o’ent, y rhai a gedwir gan yr Arabied lawer glanach na’u tai. I dori’r
unffurfieth, gan fod yn help i’r llygad orphwys, fe ddeue i’r golwg
weithie gaëe gleision o ryw fath o borfa i ddyn ac anifel.
Ymddangose’n dehyg i’r llysie y gelwir “berw’r dw’r” arnynt; a mi
weles sacheidie o hono wed’yn yn Cairo gan yrwyr anifeilied, y rhai
a’i bwytaent bob yn ail a’u gilydd, a’r naill mor awchus a’r llall.
Trwy gydol yr amser yr oedd miloedd o bobl yn pasio i fyny ac i
lawr—llu ar draed, lluaws ar anifeilied, a lluoedd mewn cerbyde o
bob math—a neb yn brysio, ond pawb yn ysgafala. Gwelwn y Nile o
hyd, ac ar y cynta’ cawn fy nyrysu gan ei thröade sydyn a diddeddf.
Bron na wnai imi gredu ei bod y’mhobman yr un pryd. Ond pan
gofies fy mod y’myn’d drwy ei delta, a bod iddi saith tafod o’r pen
meina’ i’r pen lleta’, sef o Gairo i’r môr (yn ol yr Ysgrythyre),
darfyddodd fy nyryswch yn y fan. Yr afon ryfedda’n y byd yw’r Nile.
Yr un ffurf yn union sydd i’r Pyramidie ag sydd i ddelta’r afon: ai
tybed taw oddiwrth yr ola’ y ca’dd cynllunydd y blaena’ ei syniad?
Tra’r o’wn mewn syn-fyfyrdode o’r natur yna, dyma gyffro y’mysg y
teithwyr—mae’r trên yn arafu—ac heb ragor o ragymadrodd, ce’s fy
hun y’ngorsaf Cairo. Yn siwr i chwi, nid wyf bell o dŵr Babel o ran lle
nac amser. Nid oedd genyf ond un celfigyn yn fy llaw, eithr ymestyne
cant o ddwylo duon am dano. Yr oedd pawb yn siarad ond myfi, ond
yr wyf y’meddwl taw myfi oedd yr unig un oedd yn gwrando. Syllwn
hefyd o’m cwmpas yn bur bryderus am y gŵr oedd wedi addo fy
nghyfarfod; a phan oedd fy nghalon ar fin cychwyn ei thaith i lawr i
gym’dogeth f’esgidie, clywn rywun yn gwaeddi:
“Ai Cymro ydych?”

You might also like