100% found this document useful (1 vote)
10 views55 pages

JavaScript Data Structures and Algorithms An Introduction to Understanding and Implementing Core Data Structure and Algorithm Fundamentals 1st Editon by Sammie Bae ISBN 1484239873 9781484239872 instant download

The document is a promotional description of the book 'JavaScript Data Structures and Algorithms' by Sammie Bae, which covers core data structure and algorithm fundamentals. It includes links to various related textbooks and resources for further exploration of data structures and algorithms. The book is intended for readers looking to enhance their understanding and implementation of these concepts in JavaScript.

Uploaded by

ahmadyanta8e
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 (1 vote)
10 views55 pages

JavaScript Data Structures and Algorithms An Introduction to Understanding and Implementing Core Data Structure and Algorithm Fundamentals 1st Editon by Sammie Bae ISBN 1484239873 9781484239872 instant download

The document is a promotional description of the book 'JavaScript Data Structures and Algorithms' by Sammie Bae, which covers core data structure and algorithm fundamentals. It includes links to various related textbooks and resources for further exploration of data structures and algorithms. The book is intended for readers looking to enhance their understanding and implementation of these concepts in JavaScript.

Uploaded by

ahmadyanta8e
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/ 55

JavaScript Data Structures and Algorithms An

Introduction to Understanding and Implementing


Core Data Structure and Algorithm Fundamentals
1st Editon by Sammie Bae ISBN 1484239873
9781484239872 pdf download
https://ebookball.com/product/javascript-data-structures-and-
algorithms-an-introduction-to-understanding-and-implementing-
core-data-structure-and-algorithm-fundamentals-1st-editon-by-
sammie-bae-isbn-1484239873-9781484239872-15798/

Explore and download more ebooks or textbooks


at ebookball.com
We have selected some products that you may be interested in
Click the link to download now or visit ebookball.com
for more options!.

A Practical Introduction to Data Structures And Algorithm


Analysis 3rd Edition by Clifford Shaffer

https://ebookball.com/product/a-practical-introduction-to-data-
structures-and-algorithm-analysis-3rd-edition-by-clifford-
shaffer-15310/

Data Structures and Algorithms Made Easy Data Structure


and Algorithmic Puzzles 5th Edition by Careermonk
Publications, Narasimha Karumanchi ISBN 9788193245279
https://ebookball.com/product/data-structures-and-algorithms-made-
easy-data-structure-and-algorithmic-puzzles-5th-edition-by-careermonk-
publications-narasimha-karumanchi-isbn-9788193245279-15800/

Data Structures and Algorithms 1st Edition by Alfred Aho


ISBN 0201000237 9780201000238

https://ebookball.com/product/data-structures-and-algorithms-1st-
edition-by-alfred-aho-isbn-0201000237-9780201000238-25072/

Data Structures and Algorithm Analysis in JavaTM 3rd


edition by Mark Weiss 9780133465013 0133465012

https://ebookball.com/product/data-structures-and-algorithm-analysis-
in-javatm-3rd-edition-by-mark-weiss-9780133465013-0133465012-18710/
Data Structures And Algorithm Analysis in C 4th Edition by
Mark Weiss 013284737X 9780132847377

https://ebookball.com/product/data-structures-and-algorithm-analysis-
in-c-4th-edition-by-mark-weiss-013284737x-9780132847377-15292/

Data Structures and Algorithms in Java 1st Edition by


Peter Drake ISBN 0131469142 9780131469143

https://ebookball.com/product/data-structures-and-algorithms-in-
java-1st-edition-by-peter-drake-isbn-0131469142-9780131469143-12422/

Data Structures and Algorithms in C 1st edition by Adam


Drozdek ASIN B002WLXMBY

https://ebookball.com/product/data-structures-and-algorithms-in-c-1st-
edition-by-adam-drozdek-asin-b002wlxmby-25076/

Data Structures and Algorithm Analysis in C++ 3rd edition


by Clifford Shaffer ISBN 048648582X 978-0486485829

https://ebookball.com/product/data-structures-and-algorithm-analysis-
in-c-3rd-edition-by-clifford-shaffer-
isbn-048648582x-978-0486485829-16486/

Data Structures Algorithms and Applications in C++ 1st


edition by Adam Drozdek ISBN 1133608426 9781133608424

https://ebookball.com/product/data-structures-algorithms-and-
applications-in-c-1st-edition-by-adam-drozdek-
isbn-1133608426-9781133608424-17250/
JavaScript Data
Structures and
Algorithms
An Introduction to Understanding and
Implementing Core Data Structure and
Algorithm Fundamentals

Sammie Bae
JavaScript Data Structures
and Algorithms
An Introduction to Understanding
and Implementing Core Data
Structure and Algorithm
Fundamentals

Sammie Bae
JavaScript Data Structures and Algorithms
Sammie Bae
Hamilton, ON, Canada

ISBN-13 (pbk): 978-1-4842-3987-2 ISBN-13 (electronic): 978-1-4842-3988-9


https://doi.org/10.1007/978-1-4842-3988-9
Library of Congress Control Number: 2019930417

Copyright © 2019 by Sammie Bae


This work is subject to copyright. All rights are reserved by the Publisher, whether the whole or part of the
material is concerned, specifically the rights of translation, reprinting, reuse of illustrations, recitation,
broadcasting, reproduction on microfilms or in any other physical way, and transmission or information
storage and retrieval, electronic adaptation, computer software, or by similar or dissimilar methodology now
known or hereafter developed.
Trademarked names, logos, and images may appear in this book. Rather than use a trademark symbol with
every occurrence of a trademarked name, logo, or image we use the names, logos, and images only in an
editorial fashion and to the benefit of the trademark owner, with no intention of infringement of the
trademark.
The use in this publication of trade names, trademarks, service marks, and similar terms, even if they are not
identified as such, is not to be taken as an expression of opinion as to whether or not they are subject to
proprietary rights.
While the advice and information in this book are believed to be true and accurate at the date of publication,
neither the authors nor the editors nor the publisher can accept any legal responsibility for any errors or
omissions that may be made. The publisher makes no warranty, express or implied, with respect to the
material contained herein.
Managing Director, Apress Media LLC: Welmoed Spahr
Acquisitions Editor: Louise Corrigan
Development Editor: Chris Nelson
Coordinating Editor: Nancy Chen
Cover designed by eStudioCalamar
Distributed to the book trade worldwide by Springer Science+Business Media New York, 233 Spring Street,
6th Floor, New York, NY 10013. Phone 1-800-SPRINGER, fax (201) 348-4505, e-mail orders-ny@springer-
sbm.com, or visit www.springeronline.com. Apress Media, LLC is a California LLC and the sole member
(owner) is Springer Science + Business Media Finance Inc (SSBM Finance Inc). SSBM Finance Inc is a
Delaware corporation.
For information on translations, please e-mail [email protected], or visit www.apress.com/
rights-permissions.
Apress titles may be purchased in bulk for academic, corporate, or promotional use. eBook versions and
licenses are also available for most titles. For more information, reference our Print and eBook Bulk Sales
web page at www.apress.com/bulk-sales.
Any source code or other supplementary material referenced by the author in this book is available to
readers on GitHub via the book’s product page, located at www.apress.com/9781484239872. For more
detailed information, please visit www.apress.com/source-code.
Printed on acid-free paper
This book is dedicated to Dr. Hamid R. Tizhoosh for inspiring
me in my studies and to my mother, Min Kyoung Seo, for her
kindness and support.
Table of Contents
About the Author �����������������������������������������������������������������������������������������������������xv

About the Technical Reviewer �������������������������������������������������������������������������������xvii

Acknowledgments ��������������������������������������������������������������������������������������������������xix

Introduction ������������������������������������������������������������������������������������������������������������xxi

Chapter 1: Big-O Notation ����������������������������������������������������������������������������������������� 1


Big-O Notation Primer ������������������������������������������������������������������������������������������������������������������� 1
Common Examples ������������������������������������������������������������������������������������������������������������������ 2
Rules of Big-O Notation����������������������������������������������������������������������������������������������������������������� 4
Coefficient Rule: “Get Rid of Constants”���������������������������������������������������������������������������������� 5
Sum Rule: “Add Big-Os Up” ����������������������������������������������������������������������������������������������������� 6
Product Rule: “Multiply Big-Os” ���������������������������������������������������������������������������������������������� 7
Polynomial Rule: “Big-O to the Power of k”����������������������������������������������������������������������������� 8
Summary��������������������������������������������������������������������������������������������������������������������������������������� 8
Exercises ��������������������������������������������������������������������������������������������������������������������������������������� 9
Answers��������������������������������������������������������������������������������������������������������������������������������� 11

Chapter 2: JavaScript: Unique Parts ����������������������������������������������������������������������� 13


JavaScript Scope ������������������������������������������������������������������������������������������������������������������������ 13
Global Declaration: Global Scope������������������������������������������������������������������������������������������� 13
Declaration with var: Functional Scope ��������������������������������������������������������������������������������� 13
Declaration with let: Block Scope ������������������������������������������������������������������������������������������ 15

v
Table of Contents

Equality and Types���������������������������������������������������������������������������������������������������������������������� 16


Variable Types������������������������������������������������������������������������������������������������������������������������ 16
Truthy/Falsey Check�������������������������������������������������������������������������������������������������������������� 17
=== vs ==���������������������������������������������������������������������������������������������������������������������������� 18
Objects���������������������������������������������������������������������������������������������������������������������������������� 18
Summary������������������������������������������������������������������������������������������������������������������������������������ 20

Chapter 3: JavaScript Numbers������������������������������������������������������������������������������ 21


Number System�������������������������������������������������������������������������������������������������������������������������� 21
JavaScript Number Object���������������������������������������������������������������������������������������������������������� 23
Integer Rounding������������������������������������������������������������������������������������������������������������������� 23
Number.EPSILON������������������������������������������������������������������������������������������������������������������� 24
Maximums����������������������������������������������������������������������������������������������������������������������������� 24
Minimums������������������������������������������������������������������������������������������������������������������������������ 25
Size Summary����������������������������������������������������������������������������������������������������������������������� 26
Number Algorithms���������������������������������������������������������������������������������������������������������������� 26
Prime Factorization��������������������������������������������������������������������������������������������������������������� 28
Random Number Generator�������������������������������������������������������������������������������������������������������� 29
Exercises������������������������������������������������������������������������������������������������������������������������������������� 29
Summary������������������������������������������������������������������������������������������������������������������������������������ 34

Chapter 4: JavaScript Strings��������������������������������������������������������������������������������� 35


JavaScript String Primitive��������������������������������������������������������������������������������������������������������� 35
String Access������������������������������������������������������������������������������������������������������������������������� 35
String Comparison����������������������������������������������������������������������������������������������������������������� 36
String Search������������������������������������������������������������������������������������������������������������������������� 36
String Decomposition������������������������������������������������������������������������������������������������������������ 38
String Replace����������������������������������������������������������������������������������������������������������������������� 38
Regular Expressions������������������������������������������������������������������������������������������������������������������� 38
Basic Regex��������������������������������������������������������������������������������������������������������������������������� 39
Commonly Used Regexes������������������������������������������������������������������������������������������������������ 39
Encoding������������������������������������������������������������������������������������������������������������������������������������� 41
Base64 Encoding������������������������������������������������������������������������������������������������������������������� 42

vi
Table of Contents

String Shortening������������������������������������������������������������������������������������������������������������������������ 43
Encryption����������������������������������������������������������������������������������������������������������������������������������� 45
RSA Encryption���������������������������������������������������������������������������������������������������������������������� 46
Summary������������������������������������������������������������������������������������������������������������������������������� 50

Chapter 5: JavaScript Arrays��������������������������������������������������������������������������������� 53


Introducing Arrays����������������������������������������������������������������������������������������������������������������������� 53
Insertion�������������������������������������������������������������������������������������������������������������������������������� 53
Deletion��������������������������������������������������������������������������������������������������������������������������������� 54
Access����������������������������������������������������������������������������������������������������������������������������������� 54
Iteration��������������������������������������������������������������������������������������������������������������������������������������� 54
for (Variables; Condition; Modification)��������������������������������������������������������������������������������� 55
for ( in )���������������������������������������������������������������������������������������������������������������������������������� 56
for ( of )���������������������������������������������������������������������������������������������������������������������������������� 56
forEach( )�������������������������������������������������������������������������������������������������������������������������������� 56
Helper Functions������������������������������������������������������������������������������������������������������������������������� 57
.slice(begin,end)�������������������������������������������������������������������������������������������������������������������� 57
.splice(begin,size,element1,element2…)������������������������������������������������������������������������������ 58
.concat()��������������������������������������������������������������������������������������������������������������������������������� 59
.length Property��������������������������������������������������������������������������������������������������������������������� 59
Spread Operator�������������������������������������������������������������������������������������������������������������������� 60
Exercises������������������������������������������������������������������������������������������������������������������������������������� 60
JavaScript Functional Array Methods����������������������������������������������������������������������������������������� 67
Map��������������������������������������������������������������������������������������������������������������������������������������� 67
Filter�������������������������������������������������������������������������������������������������������������������������������������� 68
Reduce���������������������������������������������������������������������������������������������������������������������������������� 68
Multidimensional Arrays������������������������������������������������������������������������������������������������������������� 68
Exercises������������������������������������������������������������������������������������������������������������������������������������� 71
Summary������������������������������������������������������������������������������������������������������������������������������������ 81

vii
Table of Contents

Chapter 6: JavaScript Objects�������������������������������������������������������������������������������� 83


JavaScript Object Property��������������������������������������������������������������������������������������������������������� 83
Prototypal Inheritance����������������������������������������������������������������������������������������������������������������� 84
Constructor and Variables����������������������������������������������������������������������������������������������������������� 85
Summary������������������������������������������������������������������������������������������������������������������������������������ 86
Exercises������������������������������������������������������������������������������������������������������������������������������������� 87

Chapter 7: JavaScript Memory Management��������������������������������������������������������� 89


Memory Leaks���������������������������������������������������������������������������������������������������������������������������� 89
Reference to an Object���������������������������������������������������������������������������������������������������������� 89
Leaking DOM������������������������������������������������������������������������������������������������������������������������� 90
Global window Object������������������������������������������������������������������������������������������������������������ 91
Limiting Object References��������������������������������������������������������������������������������������������������� 92
The delete Operator��������������������������������������������������������������������������������������������������������������� 92
Summary������������������������������������������������������������������������������������������������������������������������������������ 93
Exercises������������������������������������������������������������������������������������������������������������������������������������� 93

Chapter 8: Recursion���������������������������������������������������������������������������������������������� 99
Introducing Recursion����������������������������������������������������������������������������������������������������������������� 99
Rules of Recursion�������������������������������������������������������������������������������������������������������������������� 100
Base Case���������������������������������������������������������������������������������������������������������������������������� 100
Divide-and-Conquer Method����������������������������������������������������������������������������������������������� 101
Classic Example: Fibonacci Sequence�������������������������������������������������������������������������������� 101
Fibonacci Sequence: Tail Recursion������������������������������������������������������������������������������������ 102
Pascal’s Triangle������������������������������������������������������������������������������������������������������������������ 103
Big-O for Recursion������������������������������������������������������������������������������������������������������������������� 105
Recurrence Relations���������������������������������������������������������������������������������������������������������� 105
Master Theorem������������������������������������������������������������������������������������������������������������������ 106
Recursive Call Stack Memory��������������������������������������������������������������������������������������������������� 107
Summary���������������������������������������������������������������������������������������������������������������������������������� 109
Exercises����������������������������������������������������������������������������������������������������������������������������������� 109

viii
Table of Contents

Chapter 9: Sets����������������������������������������������������������������������������������������������������� 117


Introducing Sets������������������������������������������������������������������������������������������������������������������������ 117
Set Operations�������������������������������������������������������������������������������������������������������������������������� 117
Insertion������������������������������������������������������������������������������������������������������������������������������ 118
Deletion������������������������������������������������������������������������������������������������������������������������������� 118
Contains������������������������������������������������������������������������������������������������������������������������������� 118
Other Utility Functions�������������������������������������������������������������������������������������������������������������� 119
Intersection�������������������������������������������������������������������������������������������������������������������������� 119
isSuperSet��������������������������������������������������������������������������������������������������������������������������� 119
Union����������������������������������������������������������������������������������������������������������������������������������� 120
Difference���������������������������������������������������������������������������������������������������������������������������� 120
Summary���������������������������������������������������������������������������������������������������������������������������������� 121
Exercises����������������������������������������������������������������������������������������������������������������������������������� 122

Chapter 10: Searching and Sorting���������������������������������������������������������������������� 125


Searching���������������������������������������������������������������������������������������������������������������������������������� 125
Linear Search���������������������������������������������������������������������������������������������������������������������� 125
Binary Search���������������������������������������������������������������������������������������������������������������������� 127
Sorting�������������������������������������������������������������������������������������������������������������������������������������� 129
Bubble Sort�������������������������������������������������������������������������������������������������������������������������� 129
Selection Sort���������������������������������������������������������������������������������������������������������������������� 131
Insertion Sort����������������������������������������������������������������������������������������������������������������������� 132
Quicksort����������������������������������������������������������������������������������������������������������������������������� 134
Quickselect�������������������������������������������������������������������������������������������������������������������������� 137
Mergesort���������������������������������������������������������������������������������������������������������������������������� 138
Count Sort���������������������������������������������������������������������������������������������������������������������������� 140
JavaScript’s Built-in Sort����������������������������������������������������������������������������������������������������� 141
Summary���������������������������������������������������������������������������������������������������������������������������������� 142
Exercises����������������������������������������������������������������������������������������������������������������������������������� 143

ix
Table of Contents

Chapter 11: Hash Tables��������������������������������������������������������������������������������������� 151


Introducing Hash Tables������������������������������������������������������������������������������������������������������������ 151
Hashing Techniques������������������������������������������������������������������������������������������������������������������ 152
Prime Number Hashing������������������������������������������������������������������������������������������������������� 152
Probing�������������������������������������������������������������������������������������������������������������������������������� 154
Rehashing/Double-Hashing������������������������������������������������������������������������������������������������� 155
Hash Table Implementation������������������������������������������������������������������������������������������������������� 156
Using Linear Probing����������������������������������������������������������������������������������������������������������� 156
Using Quadratic Probing������������������������������������������������������������������������������������������������������ 158
Using Double-Hashing with Linear Probing������������������������������������������������������������������������� 160
Summary���������������������������������������������������������������������������������������������������������������������������������� 161

Chapter 12: Stacks and Queues���������������������������������������������������������������������������� 163


Stacks��������������������������������������������������������������������������������������������������������������������������������������� 163
Peek������������������������������������������������������������������������������������������������������������������������������������� 165
Insertion������������������������������������������������������������������������������������������������������������������������������ 165
Deletion������������������������������������������������������������������������������������������������������������������������������� 166
Access��������������������������������������������������������������������������������������������������������������������������������� 166
Search��������������������������������������������������������������������������������������������������������������������������������� 167
Queues�������������������������������������������������������������������������������������������������������������������������������������� 167
Peek������������������������������������������������������������������������������������������������������������������������������������� 169
Insertion������������������������������������������������������������������������������������������������������������������������������ 169
Deletion������������������������������������������������������������������������������������������������������������������������������� 169
Access��������������������������������������������������������������������������������������������������������������������������������� 170
Search��������������������������������������������������������������������������������������������������������������������������������� 171
Summary���������������������������������������������������������������������������������������������������������������������������������� 171
Exercises����������������������������������������������������������������������������������������������������������������������������������� 172

Chapter 13: Linked Lists��������������������������������������������������������������������������������������� 179


Singly Linked Lists�������������������������������������������������������������������������������������������������������������������� 179
Insertion������������������������������������������������������������������������������������������������������������������������������ 180
Deletion by Value����������������������������������������������������������������������������������������������������������������� 181

x
Table of Contents

Deletion at the Head������������������������������������������������������������������������������������������������������������ 182


Search��������������������������������������������������������������������������������������������������������������������������������� 183
Doubly Linked Lists������������������������������������������������������������������������������������������������������������������� 184
Insertion at the Head����������������������������������������������������������������������������������������������������������� 185
Insertion at the Tail�������������������������������������������������������������������������������������������������������������� 185
Deletion at the Head������������������������������������������������������������������������������������������������������������ 186
Deletion at the Tail��������������������������������������������������������������������������������������������������������������� 187
Search��������������������������������������������������������������������������������������������������������������������������������� 188
Summary���������������������������������������������������������������������������������������������������������������������������������� 189
Exercises����������������������������������������������������������������������������������������������������������������������������������� 190

Chapter 14: Caching��������������������������������������������������������������������������������������������� 193


Understanding Caching������������������������������������������������������������������������������������������������������������� 193
Least Frequently Used Caching������������������������������������������������������������������������������������������������� 194
Least Recently Used Caching���������������������������������������������������������������������������������������������������� 199
Summary���������������������������������������������������������������������������������������������������������������������������������� 203

Chapter 15: Trees�������������������������������������������������������������������������������������������������� 205


General Tree Structure�������������������������������������������������������������������������������������������������������������� 205
Binary Trees������������������������������������������������������������������������������������������������������������������������������ 206
Tree Traversal���������������������������������������������������������������������������������������������������������������������������� 207
Pre-order Traversal�������������������������������������������������������������������������������������������������������������� 207
In-Order Traversal���������������������������������������������������������������������������������������������������������������� 209
Post-order Traversal������������������������������������������������������������������������������������������������������������ 211
Level-Order Traversal���������������������������������������������������������������������������������������������������������� 212
Tree Traversal Summary������������������������������������������������������������������������������������������������������ 214
Binary Search Trees������������������������������������������������������������������������������������������������������������������ 214
Insertion������������������������������������������������������������������������������������������������������������������������������ 216
Deletion������������������������������������������������������������������������������������������������������������������������������� 218
Search��������������������������������������������������������������������������������������������������������������������������������� 220

xi
Table of Contents

AVL Trees����������������������������������������������������������������������������������������������������������������������������������� 221


Single Rotation�������������������������������������������������������������������������������������������������������������������� 221
Double Rotation������������������������������������������������������������������������������������������������������������������� 225
Balancing the Tree��������������������������������������������������������������������������������������������������������������� 228
Insertion������������������������������������������������������������������������������������������������������������������������������ 229
Putting It All Together: AVL Tree Example����������������������������������������������������������������������������� 231
Summary���������������������������������������������������������������������������������������������������������������������������������� 234
Exercises����������������������������������������������������������������������������������������������������������������������������������� 234

Chapter 16: Heaps������������������������������������������������������������������������������������������������ 245


Understanding Heaps���������������������������������������������������������������������������������������������������������������� 245
Max-Heap���������������������������������������������������������������������������������������������������������������������������� 246
Min-Heap����������������������������������������������������������������������������������������������������������������������������� 247
Binary Heap Array Index Structure�������������������������������������������������������������������������������������������� 248
Percolation: Bubbling Up and Down������������������������������������������������������������������������������������ 250
Implementing Percolation��������������������������������������������������������������������������������������������������� 253
Max-Heap Example������������������������������������������������������������������������������������������������������������� 254
Min-Heap Complete Implementation���������������������������������������������������������������������������������������� 258
Max-Heap Complete Implementation��������������������������������������������������������������������������������������� 259
Heap Sort���������������������������������������������������������������������������������������������������������������������������������� 261
Ascending-Order Sort (Min-Heap)��������������������������������������������������������������������������������������� 261
Descending-Order Sort (Max-Heap)������������������������������������������������������������������������������������ 264
Summary���������������������������������������������������������������������������������������������������������������������������������� 267
Exercises����������������������������������������������������������������������������������������������������������������������������������� 268

Chapter 17: Graphs����������������������������������������������������������������������������������������������� 273


Graph Basics����������������������������������������������������������������������������������������������������������������������������� 273
Undirected Graphs�������������������������������������������������������������������������������������������������������������������� 277
Adding Edges and Vertices�������������������������������������������������������������������������������������������������� 279
Removing Edges and Vertices��������������������������������������������������������������������������������������������� 280
Directed Graphs������������������������������������������������������������������������������������������������������������������������ 282

xii
Table of Contents

Graph Traversal������������������������������������������������������������������������������������������������������������������������� 285


Breadth-First Search����������������������������������������������������������������������������������������������������������� 286
Depth-First Search�������������������������������������������������������������������������������������������������������������� 289
Weighted Graphs and Shortest Path����������������������������������������������������������������������������������������� 293
Graphs with Weighted Edges����������������������������������������������������������������������������������������������� 293
Dijkstra’s Algorithm: Shortest Path�������������������������������������������������������������������������������������� 294
Topological Sort������������������������������������������������������������������������������������������������������������������������ 298
Summary���������������������������������������������������������������������������������������������������������������������������������� 300

Chapter 18: Advanced Strings������������������������������������������������������������������������������ 303


Trie (Prefix Tree)������������������������������������������������������������������������������������������������������������������������ 303
Boyer–Moore String Search������������������������������������������������������������������������������������������������������ 307
Knuth–Morris–Pratt String Search�������������������������������������������������������������������������������������������� 311
Rabin–Karp Search������������������������������������������������������������������������������������������������������������������� 316
The Rabin Fingerprint���������������������������������������������������������������������������������������������������������� 316
Applications in Real Life������������������������������������������������������������������������������������������������������ 319
Summary���������������������������������������������������������������������������������������������������������������������������������� 320

Chapter 19: Dynamic Programming��������������������������������������������������������������������� 321


Motivations for Dynamic Programming������������������������������������������������������������������������������������ 321
Rules of Dynamic Programming����������������������������������������������������������������������������������������������� 323
Overlapping Subproblems��������������������������������������������������������������������������������������������������� 323
Optimal Substructure���������������������������������������������������������������������������������������������������������� 323
Example: Ways to Cover Steps�������������������������������������������������������������������������������������������� 323
Classical Dynamic Programming Examples������������������������������������������������������������������������������ 325
The Knapsack Problem�������������������������������������������������������������������������������������������������������� 325
Longest Common Subsequence������������������������������������������������������������������������������������������ 328
Coin Change������������������������������������������������������������������������������������������������������������������������ 330
Edit (Levenshtein) Distance������������������������������������������������������������������������������������������������� 334
Summary���������������������������������������������������������������������������������������������������������������������������������� 338

xiii
Table of Contents

Chapter 20: Bit Manipulation�������������������������������������������������������������������������������� 339


Bitwise Operators��������������������������������������������������������������������������������������������������������������������� 339
AND�������������������������������������������������������������������������������������������������������������������������������������� 340
OR���������������������������������������������������������������������������������������������������������������������������������������� 340
XOR�������������������������������������������������������������������������������������������������������������������������������������� 341
NOT�������������������������������������������������������������������������������������������������������������������������������������� 341
Left Shift������������������������������������������������������������������������������������������������������������������������������ 342
Right Shift���������������������������������������������������������������������������������������������������������������������������� 342
Zero-Fill Right Shift������������������������������������������������������������������������������������������������������������� 343
Number Operations������������������������������������������������������������������������������������������������������������������� 343
Addition������������������������������������������������������������������������������������������������������������������������������� 343
Subtraction�������������������������������������������������������������������������������������������������������������������������� 344
Multiplication����������������������������������������������������������������������������������������������������������������������� 345
Division�������������������������������������������������������������������������������������������������������������������������������� 347
Summary���������������������������������������������������������������������������������������������������������������������������������� 349

Index��������������������������������������������������������������������������������������������������������������������� 351

xiv
About the Author
Sammie Bae is a data engineer at Yelp and previously
worked for the data platform engineering team at
NVIDIA. He developed a deep interest in JavaScript
during an internship at SMART Technologies (acquired by
Foxconn), where he developed Node.js-based JavaScript
APIs for serial port communication between electronic
board drivers and a web application. Despite how relevant
JavaScript is to the modern software engineering industry,
currently no books besides this one teach algorithms and
data structures using JavaScript. Sammie understands how
difficult these computer science concepts are and aims to
provide clear and concise explanations in this book.

xv
Random documents with unrelated
content Scribd suggests to you:
The Project Gutenberg eBook of Industrial
Poisoning from Fumes, Gases and Poisons of
Manufacturing Processes
This ebook is for the use of anyone anywhere in the United
States and most other parts of the world at no cost and with
almost no restrictions whatsoever. You may copy it, give it away
or re-use it under the terms of the Project Gutenberg License
included with this ebook or online at www.gutenberg.org. If you
are not located in the United States, you will have to check the
laws of the country where you are located before using this
eBook.

Title: Industrial Poisoning from Fumes, Gases and Poisons of


Manufacturing Processes

Author: Josef Rambousek

Translator: Sir Thomas Morison Legge

Release date: November 1, 2019 [eBook #60605]


Most recently updated: October 17, 2024

Language: English

Credits: Produced by Suzanne Lybarger, Brian Janes and the


Online
Distributed Proofreading Team at http://www.pgdp.net

*** START OF THE PROJECT GUTENBERG EBOOK INDUSTRIAL


POISONING FROM FUMES, GASES AND POISONS OF
MANUFACTURING PROCESSES ***
INDUSTRIAL POISONING
FROM FUMES, GASES AND POISONS
OF MANUFACTURING PROCESSES

BY THE SAME AUTHOR

LEAD POISONING
AND LEAD ABSORPTION:
THE SYMPTOMS, PATHOLOGY AND PREVENTION, WITH
SPECIAL REFERENCE TO THEIR INDUSTRIAL ORIGIN
AND AN ACCOUNT OF THE PRINCIPAL PROCESSES
INVOLVING RISK.
By THOMAS M. LEGGE M.D. (Oxon.), D.P.H. (Cantab.),
H.M. Medical Inspector of Factories; Lecturer on
Factory Hygiene, University of Manchester; and
KENNETH W. GOADBY, D.P.H. (Cantab.), Pathologist
and Lecturer on Bacteriology, National Dental
Hospital. Illustrated. viii+308 pp. 12s. 6d. net.
London: EDWARD ARNOLD.
INDUSTRIAL POISONING
FROM FUMES, GASES AND POISONS
OF MANUFACTURING PROCESSES

BY
DR. J. RAMBOUSEK
PROFESSOR OF FACTORY HYGIENE,
AND CHIEF STATE HEALTH OFFICER, PRAGUE

TRANSLATED AND EDITED BY


THOMAS M. LEGGE, M.D., D.P.H.
H.M. MEDICAL INSPECTOR OF FACTORIES
JOINT AUTHOR OF ‘LEAD POISONING AND LEAD ABSORPTION’

WITH ILLUSTRATIONS

LONDON
EDWARD ARNOLD
1913
TRANSLATOR’S PREFACE
I undertook the translation of Dr. Rambousek’s book because it
seemed to me to treat the subject of industrial poisons in as novel,
comprehensive, and systematic a manner as was possible within the
compass of a single volume. Having learnt much myself from
Continental writings on industrial diseases and factory hygiene, I
was anxious to let others also see how wide a field they had covered
and how thorough were the regulations for dangerous trades
abroad, especially in Germany. A praiseworthy feature of Dr.
Rambousek’s book was the wealth of references to the work of
foreign writers which is made on almost every page. To have left
these names and references, however, in the text as he has done
would have made the translation tedious reading, and therefore for
the sake of those who desire to pursue inquiry further I have
adopted the course of collecting the great majority and placing them
all together in an appendix at the end of the volume.
Dr. Rambousek as a medical man, a chemist, and a government
official having control of industrial matters, is equipped with the very
special knowledge required to describe the manufacturing processes
giving rise to injurious effects, the pathology of the lesions set up,
and the preventive measures necessary to combat them. In his
references to work done in this country he has relied largely on
abstracts which have appeared in medical and technical journals
published on the Continent. I have only thought it necessary to
amplify his statements when important work carried out here on
industrial poisoning,—such as that on nickel carbonyl and on ferro-
silicon—had been insufficiently noted. Such additions are introduced
in square brackets or in footnotes.
In his preface Dr. Rambousek says ‘the book is intended for all
who are, or are obliged to be, or ought to be, interested in industrial
poisoning.’ No words could better describe the scope of the book.
The work of translation would never have been begun but for the
assistance given me in Parts II and III by my sister, Miss H. Edith
Legge. To her, and to Mr. H. E. Brothers, F.I.C., who has been to the
trouble of reading the proofs and correcting many mistakes which
my technical knowledge was insufficient to enable me to detect, my
best thanks are due.
I am indebted to Messrs. Davidson & Co., Belfast, for permission
to use figs. 46 and 48; to Messrs. Locke, Lancaster & Co., Millwall,
for fig. 27; to Mr. R. Jacobson, for figs. 30, 33, 37, 38, and 43; to
Messrs. Siebe, Gorman & Co., for figs. 32, 39, and 40; to Messrs.
Blackman & Co. for fig. 47; to Messrs. Matthews & Yates for fig. 54;
to H.M. Controller of the Stationery Office for permission to
reproduce figs. 52, 53, and 54, and the diagrams on p. 284; and
lastly to my publisher, for figs. 41, 42, 43, and 49, which are taken
from the book by Dr. K. W. Goadby and myself on ‘Lead Poisoning
and Lead Absorption.’
T. M. L.
Hampstead, May 1913.
CONTENTS
PAGE
Introduction xiii

Part I.—Description of the industries and processes


attended with risk of poisoning: incidence of such
poisoning
Chemical Industry 1
Sulphuric acid industry (sulphur dioxide): use of
sulphuric acid 4
Its effects on health 9
Hydrochloric acid, saltcake and soda industry 14
Their effects on health 20
Use of sulphate and sulphide of soda 22
Ultramarine 22
Sulphonal 22
Diethyl sulphate 23
Chlorine, chloride of lime and chlorates 23
Their effect on health 26
Other chlorine compounds and their use as well as
bromine, iodine and fluorine 29
Chlorides of phosphorus 30
Chlorides of sulphur 31
Zinc chloride 32
Rock salt 32
Organic chlorine compounds 32
Carbon oxychloride (phosgene) 32
Carbon chlorine compounds (aliphatic) 33
Methyl chloride 33
Methylene chloride 34
Carbon tetrachloride 34
Ethyl chloride 34
Monochloracetic acid 34
Chloral 34
Chloroform 34
Chloride of nitrogen 35
Cyanogen chloride 35
Chlorobenzene 35
Benzo trichloride, benzyl chloride 35
Nitro- and dinitro-chlorobenzene 35
Iodine and iodine compounds 36
Bromine and bromine compounds 36
Methyl iodide and methyl bromide 36
Fluorine compounds 37
Hydrofluoric and silicofluoric acids 38
Manufacture and uses of nitric acid 39
Its effect on health 40
Nitric and nitrous salts and compounds 44
Barium nitrate 44
Ammonium nitrate 44
Lead nitrate 44
Mercurous and mercuric nitrate 44
Silver nitrate 45
Sodium nitrite 45
Amyl nitrite 45
Manufacture of explosives and their effects 45
Fulminate of mercury 46
Nitro-glycerin 46
Dynamite 47
Gun cotton 48
Collodion cotton, smokeless powder 48
Manufacture of phosphorus and lucifer matches and
their effects 49
Other uses of phosphorus and compounds of
phosphorus 52
Phosphor-bronze 52
Sulphide of phosphorus 52
Phosphoretted hydrogen 52
Superphosphate and artificial manure 53
Basic slag 54
Chromium compounds and their uses 55
Sodium and potassium bichromate 55
Lead chromate and chrome colours 55
Their effect on health 56
Manganese compounds and their effects 58
Mineral oil industry and the use of petroleum and
benzine 59
Chemical cleaning 61
Their effect on health 61
Recovery and use of sulphur 64
Its effect on health 65
Sulphuretted hydrogen and its effect 65
Preparation and use of carbon bisulphide in
vulcanising, &c. 68
Its effect on health 69
Preparation of illuminating gas 71
Its effect on health 74
Coke ovens and risk from them 77
Other kinds of power and illuminating gas 80
Producer gas 80
Blast furnace gas 82
Water gas 82
Dowson and Mond gas 82
Suction gas 83
Acetylene (calcium carbide) 85
Their effect on health 87
Ammonia and ammonium compounds 90
Use of ammonia and its effects 92
Cyanogen compounds 93
Use of cyanide, and their effects 95
Coal tar and tar products 96
Their effects on health 101
Artificial organic dye stuffs (coal tar colours) 107
Their effects on health 112
Recovery and use of metals 120
Lead poisoning in general 120
Lead, silver and zinc smelting 122
Spelter works 125
Lead poisoning in lead smelting and spelter works 126
White lead and other use of lead colours 131
Lead poisoning in the manufacture and use of
white lead and lead paints 132
Manufacture of electric accumulators 134
The ceramic industry 135
Coarse ware pottery 136
Manufacture of stove tiles 137
Stoneware and porcelain 138
Lead poisoning in letterpress printing 138
Lead poisoning in filecutting, polishing precious
stones, musical instrument making, &c. 140
Mercury (poisoning in its recovery and use) 141
Mercurial poisoning in water-gilding, coating
mirrors, in felt hat making, &c. 142
Arsenic (poisoning in its recovery and in use of
arsenic and arsenic compounds) 143
Recovery of arsenic and white arsenic 143
Poisoning by arseniuretted hydrogen gas 145
Antimony 146
Extraction of iron 146
Ferro-silicon 149
Zinc 151
Copper, brass (brassfounders’ ague) 151
Metal pickling 152
Other Industries 153
Treatment of stone and earths; lime burning,
glass 153
Treatment of animal products 154
Preparation of vegetable foodstuffs 154
Poisonous woods 154
Textile industry 156

Part II.—Pathology and treatment of industrial poisoning


Industrial poisons in general 157
Channels of absorption, classification, susceptibility,
immunity 158
Fate of poisons in the body—absorption, cumulative
action, excretion 162
General remarks on treatment 163
Industrial poisons in particular 169
Group: mineral acids, halogens, inorganic halogen
compounds, alkalis 169
Hydrochloric acid 170
Hydrofluoric and silico-fluoric acids 171
Sulphur dioxide and sulphuric acid 171
Nitrous fumes, nitric acid 172
Chlorine, bromine, iodine 173
Chlorides of phosphorus, sulphur and zinc 174
Ammonia 175
Alkalis 176
Group: Metals and metal-compounds 176
Lead and its compounds 177
Zinc and its alloys 182
Mercury and its compounds 183
Manganese and its compounds 184
Chromium and its compounds 185
Nickel salts (nickel carbonyl) 186
Copper 188
Silver and its compounds 188
Group: Arsenic, Phosphorus 189
Arsenic and its oxides 189
Phosphorus 190
Phosphoretted hydrogen 191
Group: Sulphuretted hydrogen, carbon bisulphide,
and cyanogen (nerve poisons) 192
Sulphuretted hydrogen 192
Carbon bisulphide 193
Cyanogen compounds 195
Group: Arseniuretted hydrogen and carbonic oxide
(blood poisons) 197
Group: Hydrocarbons of the aliphatic and aromatic
series and their halogen and hydroxyl substitution
products 202
Sub-group: Hydrocarbons of mineral oils and
their distillation products (benzine, paraffin,
&c.) 202
Sub-group: Hydrocarbons of the aromatic series 204
Benzene and its homologues 204
Naphthalene 208
Sub-group: Halogen substitution products of the
aliphatic series (narcotic poisons) 208
Sub-group: Halogen substitution products of the
benzene series 209
Sub-group: Hydroxyl substitution products of the
fatty series 210
Group: Nitro- and amido-derivatives of the aliphatic
and aromatic series 211
Sub-group: Nitro-derivatives of the aliphatic
series 212
Sub-group: Nitro- and amido-derivatives of the
aromatic series 212
Turpentine, pyridene, alkaloids, nicotine, poisonous
woods 215

Part III.—Preventive measures against industrial


poisoning
General preventive measures 217
International action, notification of poisoning,
schedules of poisons 218
Special preventive measures for workers—selection,
periodical medical examination, co-operation of
workers, &c. 226
Rescue appliances 230
Washing accommodation and baths 237
Removal of dust and fumes by exhaust ventilation 242
Preventive Measures in Particular Industries 256
Sulphuric acid industry 256
Hydrochloric acid and soda industries 257
Chlorine, bleaching powder, chlorine compounds 259
Manufacture of nitric acid and explosives 260
Artificial manures, basic slag 261
Chromium and its compounds 265
Petroleum, benzine 267
Phosphorus, lucifer matches 268
Bisulphide of carbon 271
Illuminating gas, tar production 275
Gas power plant 276
Acetylene gas installations 278
Ammonia 279
Cyanogen, cyanogen compounds 280
Coal tar, tar products 280
Organic dye-stuffs, coal tar colours 285
Recovery and use of metals 288
Iron 289
Lead 292
Lead smelting 299
Electric accumulators 305
White lead and lead colours 310
Letterpress printing 316
Ceramic industry 319
File cutting 321
Other uses of lead 322
Zinc smelting 323
Brass casting, metal pickling 325
Recovery and use of mercury 326
Arsenic and its compounds 328
Gold and silver 329
Preventive Measures in other trades 329
Manufacture and use of varnishes 330
Production of vegetable foods 332
Wood working 335
Paper manufacture 336
Textile industries 336
Appendix 339
Index 355
INTRODUCTION
The attempt to systematise from the scientific standpoint the mass
of material that has been collected about poisons is a very heavy
task, even for the toxicologist who desires to treat his subject
comprehensively. How much greater is the difficulty of writing a
systematic book on industrial poisoning keeping practical application
in the forefront!
Technical considerations which are decisive in the causation and
prevention of industrial poisoning are here of especial moment, and
must naturally influence classification of the subject-matter when the
object is to assist those concerned in factory hygiene.
Bearing this in mind, I have divided the subject into three parts.
The arrangement of the first, which gives as complete a statement
as possible of the occurrence of industrial poisoning, into industries
and processes was determined on technical grounds. The second,
which amplifies the first, attempts to summarise the pathology or
symptoms of the various forms of poisoning. The references to the
literature of the particular subjects—as exhaustive as I could make
them—will lighten further study. To these two parts, following on
knowledge of causation and symptoms, the third, in which
preventive measures are outlined, is linked.
The apparent drawback in use of the book is that one form of
poisoning has often to be referred to in three places. But, I hope,
this is more than counterbalanced by the completeness of the
scheme which results from the subdivision of the subject.
The pathology of industrial poisoning necessitates frequent
repetition when describing the branches of industry giving rise to the
intoxication, as one and the same form can occur in the most varied
processes. The numerous instances of actual cases of poisoning
quoted must therefore be regarded as conforming to the same
pathological type. Similarly, preventive measures require separate
systematic treatment in order to avoid constant repetition which
would otherwise obscure the general survey. Quite a number of
means of prevention apply equally to several industries in which the
same cause is at work. The success attained by thus simplifying the
issues is the greater because such common measures are the easier
to carry through and to supervise.
The method therefore has been adopted only after serious
reflection and has been directed mainly by practical considerations.
Recent cases which have either been reported or come to the
knowledge of the author have been given, with particulars as exact
as possible. Cases dating back some time have been omitted
intentionally so as to exclude everything which did not correspond
with the present conditions of industry and trade. Historical facts
only receive consideration in so far as they are fundamentally
important and necessary for the sake of completeness.
The details given in Part I of actual instances will supply material
for fresh efforts, renewed investigation, and new points of attack.

INDUSTRIAL POISONING
PART I
DESCRIPTION OF THE INDUSTRIES AND
PROCESSES ATTENDED WITH RISK OF
POISONING; INCIDENCE OF SUCH
POISONING

I. THE CHEMICAL INDUSTRY


GENERAL CONSIDERATIONS AS TO INCIDENCE OF
INDUSTRIAL POISONING

The chemical industry offers naturally a wide field for the


occurrence of industrial poisoning. Daily contact with the actual
poisonous substances to be prepared, used, stored, and despatched
in large quantity gives opportunity for either acute or chronic
poisoning—in the former case from sudden accidental entrance into
the system of fairly large doses, as the result of defective or careless
manipulation, and, in the latter, constant gradual absorption (often
unsuspected) of the poison in small amount.
The industry, however, can take credit for the way in which
incidence of industrial poisoning has been kept down in view of the
magnitude and variety of the risks which often threaten. This is
attributable to the comprehensive hygienic measures enforced in
large chemical works keeping abreast of modern advance in
technical knowledge. A section of this book deals with the principles
underlying these measures. Nevertheless, despite all regulations, risk
of poisoning cannot be wholly banished. Again and again accidents
and illness occur for which industrial poisoning is responsible. Wholly
to prevent this is as impossible as entirely to prevent accidents by
mechanical guarding of machinery.
Owing to the unknown sources of danger, successful measures to
ward it off are often difficult. The rapid advance of this branch of
industry, the constant development of new processes and reactions,
the frequent discovery of new materials (with properties at first
unknown, and for a long time insufficiently understood, but
nevertheless indispensable), constantly give rise to new dangers and
possibilities of danger, of which an accident or some disease with
hitherto unknown symptoms is the first indication. Further, even
when the dangerous effects are recognised, there may often be
difficulty in devising appropriate precautions, as circumstances may
prevent immediate recognition of the action of the poison. We
cannot always tell, for instance, with the substances used or
produced in the processes, which is responsible for the poisoning,
because, not infrequently, the substances in question are not
chemically pure, but may be either raw products, bye-products, &c.,
producing mixtures of different bodies or liberating different
chemical compounds as impurities.
Hence difficulty often arises in the strict scientific explanation of
particular cases of poisoning, and, in a text-book such as this,
difficulty also of description. A rather full treatment of the technical
processes may make the task easier and help to give a connected
picture of the risks of poisoning in the chemical industry. Such a
procedure may be especially useful to readers insufficiently
acquainted with chemical technology.
We are indebted to Leymann1 and Grandhomme2 especially for
knowledge of incidence of industrial poisoning in this industry. The
statistical data furnished by them are the most important proof that
poisoning, at any rate in large factories, is not of very frequent
occurrence.
Leymann’s statistics relate to a large modern works in which the
number employed during the twenty-three years of observation
increased from 640 in the year 1891 to 1562 in 1904, giving an
average of about 1000 yearly, one-half of whom might properly be
defined as ‘chemical workers.’ The factory is concerned in the
manufacture of sulphuric, nitric, and hydrochloric acids, alkali,
bichromates, aniline, trinitro-phenol, bleaching powder, organic
chlorine compounds, and potassium permanganate.
These statistics are usefully complemented by those of
Grandhomme drawn from the colour works at Höchst a-M. This large
aniline works employs from 2600 to 2700 workers; the raw materials
are principally benzene and its homologues, naphthalene and
anthracene. The manufacture includes the production of coal-tar
colours, nitro- and dinitro-benzene, aniline, rosaniline, fuchsine, and
other aniline colours, and finally such pharmaceutical preparations as
antipyrin, dermatol, sanoform, &c. Of the 2700 employed, 1400 are
chemical workers and the remainder labourers.
These two series of statistics based on exact observations and
covering allied chemical manufacture are taken together. They seek
to give the answer to the question—How many and what industrial
poisonings are found?
The figures of Leymann (on an average of 1000 workers employed
per annum) show 285 cases of poisoning reported between the
years 1881 and 1904. Of these 275 were caused by aniline,
toluidine, nitro- and dinitro-benzene, nitrophenol, nitrochloro and
dinitrochloro benzene. Three were fatal and several involved lengthy
invalidity (from 30 to 134 days, owing to secondary pneumonia).
Included further are one severe case of chrome (bichromate)
poisoning (with nephritis as a sequela), five cases of lead poisoning,
three of chlorine, and one of sulphuretted hydrogen gas. In the
Höchst a-M. factory (employing about 2500 workers) there were, in
the ten years 1883-92, only 129 cases of poisoning, of which 109
were due to aniline. Later figures for the years 1893-5 showed 122
cases, of which 43 were due to aniline and 76 to lead (contracted
mostly in the nitrating house). Grandhomme mentions further
hyperidrosis among persons employed on solutions of calcium
chloride, injury to health from inhalation of methyl iodide vapour in
the antipyrin department, a fatal case of benzene poisoning
(entering an empty vessel in which materials had previously been
extracted with benzene), and finally ulceration and perforation of the
septum of the nose in several chrome workers.
The number of severe cases is not large, but it must be
remembered that the factories to which the figures relate are in
every respect models of their kind, amply provided with safety
appliances and arrangements for the welfare of the workers. The
relatively small amount of poisoning is to be attributed without
doubt to the precautionary measures taken. Further, in the statistics
referred to only those cases are included in which the symptoms
were definite, or so severe as to necessitate medical treatment.
Absorption of the poison in small amount without producing
characteristic symptoms, as is often the case with irritating or
corrosive fumes, and such as involve only temporary indisposition,
are not included. Leymann himself refers to this when dealing with
illness observed in the mineral acid department (especially sulphuric
acid), and calls attention to the frequency of affections of the
respiratory organs among the persons employed, attributing them
rightly to the irritating and corrosive effect of the acid vapour.
Elsewhere he refers to the frequency of digestive disturbance among
persons coming into contact with sodium sulphide, and thinks that
this may be due to the action of sulphuretted hydrogen gas.
Nevertheless, the effect of industrial poisons on the health of
workers in chemical factories ought on no account to be made light
of. The admirable results cited are due to a proper recognition of the
danger, with consequent care to guard against it. Not only have
Grandhomme and Leymann[A] rendered great services by their work,
but the firms in question also, by allowing such full and careful
inquiries to be undertaken and published.

SULPHURIC ACID (SULPHUR DIOXIDE)


Manufacture.—Sulphur dioxide, generally obtained by roasting
pyrites in furnaces of various constructions, or, more rarely, by
burning brimstone or sulphur from the spent oxide of gas-works,
serves as the raw material for the manufacture of sulphuric acid.
Before roasting the pyrites is crushed, the ‘lump ore’ then separated
from the ‘smalls,’ the former roasted in ‘lump-burners’ or kilns
(generally several roasting furnace hearths united into one system),
and the latter preferably in Malétra and Malétra-Schaffner shelf-
burners (fig. 1) composed of several superimposed firebrick shelves.
The pyrites is charged on to the uppermost shelf and gradually
worked downwards. Pyrites residues are not suitable for direct
recovery of iron, but copper can be recovered from residues
sufficiently rich in metal by the wet process; the residues thus freed
of copper and sulphur are then smelted for recovery of iron.

Fig. 1.—Pyrites Burner for Smalls (after Lueger)

Utilisation for sulphuric acid manufacture of the sulphur dioxide


given off in the calcining of zinc blende (see Spelter works),
impracticable in reverberatory furnaces, has been made possible at
the Rhenania factory by introduction of muffle furnaces (several
superimposed), because by this means the gases led off are
sufficiently concentrated, as they are not diluted with the gases and
smoke from the heating fires. This method, like any other which
utilises the gases from roasting furnaces, has great hygienic, in
addition to economical, advantages, because escape of sulphur
dioxide gas is avoided. Furnace gases, too poor in sulphur dioxide to
serve for direct production of sulphuric acid, can with advantage be
made to produce liquid anhydrous sulphur dioxide. Thus, the sulphur
dioxide gas from the furnaces is first absorbed by water, driven off
again by boiling, cooled, dried, and liquefied by pressure.
The gaseous sulphur dioxide obtained by any of the methods
described is converted into sulphuric acid either by (a) the chamber
process or (b) the contact process.
In the lead chamber process the furnace gases pass through flues
in which the flue dust and a portion of the arsenious acid are
deposited into the Glover tower at a temperature of about 300° C.,
and from there into the lead chambers where oxidation of the
sulphur dioxide into sulphuric acid takes place, in the presence of
sufficient water, by transference of the oxygen of the air through the
intervention of the oxides of nitrogen. The gases containing oxides
of nitrogen, &c., which are drawn out of the lead chambers, have
the nitrous fumes absorbed in the Gay-Lussac tower (of which there
are one or two in series), by passage through sulphuric acid which is
made to trickle down the tower. The sulphuric acid so obtained, rich
in oxides of nitrogen, and the chamber acid are led to the Glover
tower for the purpose of denitration and concentration, so that all
the sulphuric acid leaves the Glover as Glover acid of about 136-
144° Tw. Losses in nitrous fumes are best made up by addition of
nitric acid at the Glover or introduction into the first chamber. The
deficiency is also frequently made good from nitre-pots.
The lead chambers (fig. 2) are usually constructed entirely—sides,
roof, and floor—of lead sheets, which are joined together by means
of a hydrogen blowpipe. The sheets forming the roof and walls are
supported, independent of the bottom, on a framework of wood.
The capacity varies from 35,000 to 80,000 cubic feet. The floor
forms a flat collecting surface for the chamber acid which lutes the
chamber from the outer air. The necessary water is introduced into
the chamber as steam or fine water spray.
The Glover and Gay-Lussac towers are lead towers. The Glover is
lined with acid-proof bricks and filled with acid-proof packing to
increase the amount of contact. The Gay-Lussac is filled with coke
over which the concentrated sulphuric acid referred to above flows,
forming, after absorption of the nitrous fumes, nitro-sulphuric acid.
Fig. 2a.—Lead Chamber System—Section through X X (after Ost)
Fig. 2b.—Lead Chamber System—Plan

A Pyrites Burner
B Glover Tower
C Draft Regulator
D, D´ Lead Chambers
E Air Shaft
F, F,´ F,´´ F´´´ Acid Reservoirs
G Acid Egg
H Cooler
J Gay-Lussac Tower
As already stated, two Gay-Lussac towers are usually connected
together, or where there are several lead-chamber systems there is,
apart from the Gay-Lussac attached to each, a central Gay-Lussac in
addition, common to the whole series. The introduction of several
Gay-Lussac towers has the advantage of preventing loss of the
nitrous fumes as much as possible—mainly on economical grounds,
as nitric acid is expensive. But this arrangement is at the same time
advantageous on hygienic grounds, as escape of poisonous gases
containing nitrous fumes, &c., is effectually avoided. The acids are
driven to the top of the towers by compressed air. The whole system
—chambers and towers—is connected by means of wide lead
conduits. Frequently, for the purpose of quickening the chamber
process (by increasing the number of condensing surfaces) Lunge-
Rohrmann plate towers are inserted in the system—tall towers lined
with lead in which square perforated plates are hung horizontally,
and down which diluted sulphuric acid trickles.
To increase the draught in the whole system a chimney is usual at
the end, and, in addition, a fan of hard lead or earthenware may be
introduced in front of the first chamber or between the two Gay-
Lussac towers. Maintenance of a constant uniform draught is not
only necessary for technical reasons, but has hygienic interest, since
escape of injurious gases is avoided (see also Part III).
The chamber acid (of 110°-120° Tw. = 63-70 %) and the stronger
Glover acid (of 136°-144° Tw. = 75-82 %) contain impurities. In
order to obtain for certain purposes pure strong acid the chamber
acid is purified and concentrated. The impurities are notably
arsenious and nitrous acids (Glover acid is N free), lead, copper, and
iron. Concentration (apart from that to Glover acid in the Glover
tower) is effected by evaporation in lead pans to 140° Tw. and finally
in glass balloons or platinum stills to 168° Tw. (= 97 %). The lead
pans are generally heated by utilising the waste heat from the
furnaces or by steam coils in the acid itself, or even by direct firing.
Production of sulphuric acid by the contact method depends on
the fact that a mixture of sulphur dioxide and excess of oxygen (air)
combines to form sulphur trioxide at a moderate heat in presence of
a contact substance such as platinised asbestos or oxide of iron. The
sulphur dioxide must be carefully cleaned and dried, and with the
excess of air is passed through the contact substance. If asbestos
carrying a small percentage of finely divided platinum is the contact
substance, it is generally used in the form of pipes; oxide of iron
(the residue of pyrites), if used, is charged into a furnace. Cooling by
a coil of pipes and condensation in washing towers supplied with
concentrated sulphuric acid always forms a part of the process. A fan
draws the gases from the roasting furnaces and drives them through
the system. The end product is a fuming sulphuric acid containing
20-30 per cent. SO₃. From this by distillation a concentrated acid
and a pure anhydride are obtained. From a health point of view it is
of importance to know that all sulphuric acid derived from this
anhydride is pure and free from arsenic.
The most important uses of sulphuric acid are the following: as
chamber acid (110°-120° Tw.) in the superphosphate, ammonium
sulphate, and alum industries; as Glover acid (140°-150° Tw.) in the
Leblanc process, i.e. saltcake and manufacture of hydrochloric acid,
and to etch metals; as sulphuric acid of 168° Tw. in colour and
explosives manufacture (nitric acid, nitro-benzene, nitro-glycerine,
gun-cotton, &c.); as concentrated sulphuric acid and anhydride for
the production of organic sulphonic acids (for the alizarin and
naphthol industry) and in the refining of petroleum and other oils.
Completely de-arsenicated sulphuric acid is used in making starch,
sugar, pharmaceutical preparations, and in electrical accumulator
manufacture.
Effects on Health.—The health of sulphuric acid workers cannot in
general be described as unfavourable.
In comparison with chemical workers they have, it is said,
relatively the lowest morbidity. Although in this industrial occupation
no special factors are at work which injure in general the health of
the workers, there is a characteristic effect, without doubt due to the
occupation—namely, disease of the respiratory organs. Leymann’s
figures are sufficiently large to show that the number of cases of
diseases of the respiratory organs is decidedly greater in the
sulphuric acid industry than among other chemical workers. He
attributes this to the irritating and corrosive effect of sulphur dioxide
and sulphuric acid vapour on the mucous membrane of the
respiratory tract, as inhalation of these gases can never be quite
avoided, because the draught in the furnace and chamber system
varies, and the working is not always uniform. Strongly irritating
vapours escape again in making a high percentage acid in platinum
vessels, which in consequence are difficult to keep air-tight. Of
greater importance than these injurious effects from frequent
inhalation of small quantities of acid vapours, or employment in
workrooms in which the air is slightly charged with acid, is the
accidental sudden inhalation of large quantities of acid gases, which
may arise in the manufacture, especially by careless attendance.
Formerly this was common in charging the roasting furnaces when
the draught in the furnace, on addition of the pyrites, was not
strengthened at the same time. This can be easily avoided by
artificial regulation of the draught.
Accidents through inhalation of acid gases occur further when
entering the lead chambers or acid tanks, and in emptying the
towers. Heinzerling relates several cases taken from factory
inspectors’ reports. Thus, in a sulphuric acid factory the deposit
(lead oxysulphate) which had collected on the floor of a chamber
was being removed: to effect this the lead chambers were opened at
the side. Two of the workers, who had probably been exposed too
long to the acid vapours evolved in stirring up the deposit, died a
short time after they had finished the work. A similar fatality
occurred in cleaning out a nitro-sulphuric acid tank, the required
neutralisation of the acid by lime before entering having been
omitted. Of the two workers who entered, one died the next day;
the other remained unaffected. The deceased had, as the post
mortem showed, already suffered previously from pleurisy. A fatality
from breathing nitrous fumes is described fully in the report of the
Union of Chemical Industry for the year 1905. The worker was
engaged with two others in fixing a fan to a lead chamber; the
workers omitted to wait for the arrival of the foreman who was to
have supervised the operation. Although the men used moist
sponges as respirators, one of them inhaled nitrous fumes escaping
from the chamber in such quantity that he died the following day.
Similar accidents have occurred in cleaning out the Gay-Lussac
towers. Such poisonings have repeatedly occurred in Germany. Fatal
poisoning is recorded in the report of the Union of Chemical
Industry, in the emptying and cleaning of a Gay-Lussac tower
despite careful precautions. The tower, filled with coke, had been
previously well washed with water, and during the operation of
emptying, air had been constantly blown through by means of a
Körting’s injector. The affected worker had been in the tower about
an hour; two hours later symptoms of poisoning set in which proved
fatal in an hour despite immediate medical attention. As such
accidents kept on recurring, the Union of Chemical Industry drew up
special precautions to be adopted in the emptying of these towers,
which are printed in Part III.
Naturally, in all these cases it is difficult to say exactly which of the
acid gases arising in the production of sulphuric acid was responsible
for the poisoning. In the fatal cases cited, probably nitrous fumes
played the more important part.
Poisoning has occurred in the transport of sulphuric acid. In some
of the cases, at all events, gaseous impurities, especially
arseniuretted hydrogen, were present.
Thus, in the reports of the German Union of Chemical Industry for
the year 1901, a worker succumbed through inhalation of poisonous
gases in cleaning out a tank waggon for the transport of sulphuric
acid. The tank was cleaned of the adhering mud, as had been the
custom for years, by a man who climbed into it. No injurious effects
had been noted previously at the work, and no further precautions
were taken than that one worker relieved another at short intervals,
and the work was carried on under supervision. On the occasion in
question, however, there was an unusually large quantity of deposit,
although the quality of the sulphuric acid was the same, and work
had to be continued longer. The worker who remained longest in the
tank became ill on his way home and died in hospital the following
day; the other workers were only slightly affected. The sulphuric
acid used by the firm in question immediately before the accident
came from a newly built factory in which anhydrous sulphuric acid
had been prepared by a special process. The acid was Glover acid,
and it is possible that selenium and arsenic compounds were present
in the residues. Arseniuretted hydrogen might have been generated
in digging up the mud. Two similar fatalities are described in the
report of the same Union for the year 1905. They happened similarly
in cleaning out a sulphuric acid tank waggon, and in them the
arsenic in the acid was the cause. Preliminary swilling out with water
diluted the remainder of the sulphuric acid, but, nevertheless, it
acted on the iron of the container. Generation of hydrogen gas is the
condition for the reduction of the arsenious acid present in sulphuric
acid with formation of arseniuretted hydrogen. In portions of the
viscera arsenic was found. Lately in the annual reports of the Union
of Chemical Industry for 1908 several cases of poisoning are
described which were caused by sulphuric acid. A worker took a
sample out of a vessel of sulphuric acid containing sulphuretted
hydrogen gas. Instead of using the prescribed cock, he opened the
man-hole and put his head inside, inhaling concentrated
sulphuretted hydrogen gas. He became immediately unconscious
and died. Through ignorance no use was made of the oxygen
apparatus.
Another fatality occurred through a foreman directing some
workers, contrary to the regulations against accidents from nitrous
gases, to clean a vessel containing nitric and sulphuric acids. They
wore no air helmets: one died shortly after from inhalation of nitrous
fumes. Under certain circumstances even the breaking of carboys
filled with sulphuric acid may give rise to severe poisoning through
inhalation of acid gases. Thus a fatality1 occurred to the occupier of
a workroom next some premises in which sulphuric acid carboys had
been accidentally broken. Severe symptoms developed the same
night, and he succumbed the next morning in spite of treatment
with oxygen. A worker in the factory became seriously ill but
recovered.
A similar case is described2 in a factory where concentrated
sulphuric acid had been spilt. The workers covered the spot with
shavings, which resulted in strong development of sulphur dioxide,
leading to unconsciousness in one worker.
The frequent observation of the injurious effect of acid gases on
the teeth of workers requires mention; inflammation of the eyes of
workers also is attributed to the effects of sulphuric acid.
Leymann’s statistics show corrosions and burns among sulphuric
acid workers to be more than five times that among other classes.
Such burns happen most frequently from carelessness. Thus, in the
reports of the Union of Chemical Industry for 1901, three severe
accidents are mentioned which occurred from use of compressed air.
In two cases the acid had been introduced before the compressed
air had been turned off; in the third the worker let the compressed
air into the vessel and forgot to turn off the inlet valve. Although the
valves were provided with lead guards, some of the acid squirted
into the worker’s face. In one case complete blindness followed, in a
second blindness in one eye, and in the third blindness in one eye
and impaired vision of the other.
Besides these dangers from the raw material, bye-products, and
products of the manufacture, lead poisoning has been reported in
the erection and repair of lead chambers. The lead burners generally
use a hydrogen flame; the necessary hydrogen is usually made from
zinc and sulphuric acid and is led to the iron by a tube. If the zinc
and sulphuric acid contain arsenic, the very dangerous arseniuretted
hydrogen is formed, which escapes through leakages in the piping,
or is burnt in the flame to arsenious acid.
Further, the lead burners and plumbers are exposed to the danger
of chronic lead poisoning from insufficient observance of the
personal precautionary measures necessary to guard against it (see
Part III). Those who are constantly engaged in burning the lead
sheets and pipes of the chambers suffer not infrequently from
severe symptoms. Unfortunately, the work requires skill and
experience, and hence alternation of employment is hardly possible.
Finally, mention should be made of poisoning by arseniuretted
hydrogen gas from vessels filled with sulphuric acid containing
arsenic as an impurity, and by sulphuretted hydrogen gas in
purifying the acid itself. In the manufacture of liquid sulphur dioxide,
injury to health can arise from inhalation of the acid escaping from
the apparatus. The most frequent cause for such escape of sulphur
dioxide is erosion of the walls of the compressor pumps and of the
transport vessels, in consequence of the gas being insufficiently
dried, as, when moist, it attacks iron.
Sulphur dioxide will come up for further consideration when
describing the industrial processes giving rise to it, or in which it is
used.

HYDROCHLORIC ACID, SALTCAKE, AND SODA

Manufacture.—The production of hydrochloric acid (HCl), sodium


sulphate (Na₂SO₄), and sodium sulphide (Na₂S) forms part of the
manufacture of soda (Na₂CO₃) by the Leblanc process. The products
first named increase in importance, while the Leblanc soda process
is being replaced more and more by the manufacture of soda by the
Solvay ammonia process, so much so that on the Continent the
latter method predominates and only in England does the Leblanc
process hold its ground.
Health interests have exercised an important bearing on the
development of the industries in question. At first, in the Leblanc
Welcome to our website – the ideal destination for book lovers and
knowledge seekers. With a mission to inspire endlessly, we offer a
vast collection of books, ranging from classic literary works to
specialized publications, self-development books, and children's
literature. Each book is a new journey of discovery, expanding
knowledge and enriching the soul of the reade

Our website is not just a platform for buying books, but a bridge
connecting readers to the timeless values of culture and wisdom. With
an elegant, user-friendly interface and an intelligent search system,
we are committed to providing a quick and convenient shopping
experience. Additionally, our special promotions and home delivery
services ensure that you save time and fully enjoy the joy of reading.

Let us accompany you on the journey of exploring knowledge and


personal growth!

ebookball.com

You might also like