Both those techniques are used in different situations.
Log shipping is going to be used to get an exact duplicate of the database to another server. It is typically used to create a high availability solution where you can accept a few minutes of data loss. The server which is receiving the logs is left is a state which is not usable by users until fail over is started. Log shipping is typically only setup to go to a single server.
Replication is used to create copies of a specific table, set of tables, or subset of data within a table or tables on one or many other servers. The data can be pushed in near real time, or on a schedule depending on the requirements of the application and the connectivity which the network can support. Replication can be setup to send the same data to several servers at the same time.
While log shipping is used for fail over, Replication is used to get read only copies of the data to users in other locations, or to several servers in the same location to support a very high rate of reads.
Replication can be setup to send inserts, updates and deletes back to the first server in the replication setup (called the publisher), however most people do not need this specific setup.